сортировать NSMutableArray используя специальный шаблон? - PullRequest
0 голосов
/ 19 января 2011

Я хочу отсортировать массив примерно так.

Предположим, у меня есть 4 пользователя, которые входят в свое устройство, как это

Пользователь 1 устройство (идентификатор пользователя 1,2,3,4)

Устройство пользователя 2 (идентификатор пользователя 1,2,3,4)

Устройство пользователя 3 (идентификатор пользователя 1,2,3,4)

Устройство пользователя 4(идентификатор пользователя 1,2,3,4)

Теперь я хочу, чтобы они сортировались таким образом на каждом из их устройств, как по часовой стрелке.

Устройство пользователя 1 (идентификатор пользователя 1,2,3,4)

Устройство пользователя 2 (идентификатор пользователя 2,3,4,1)

Устройство пользователя 3 (идентификатор пользователя 3,4,1,2)

Устройство пользователя 4 (идентификатор пользователя 4,1,2,3)

Кто-нибудь знает какой-либо алгоритм для достижения этой цели?

Ответы [ 2 ]

1 голос
/ 19 января 2011

Вы можете удалить первый элемент массива, а затем добавить его в конец и продолжать до тех пор, пока пользователь не увидит свое имя пользователя / идентификатор.Это может сработать, поскольку при удалении первого элемента все они смещаются вниз на первое место.

while([[array objectAtIndex:0] id] != [user id])
{
    id temp = [[array objectAtIndex:0] retain];
    [array removeObjectAtIndex:0]; //may cause a deallocation of "temp" if it weren't retained
    [array addObject:temp];
    [temp release];
}
0 голосов
/ 19 января 2011

Вы можете отсортировать NSArray по любым критериям, которые вам нравятся. См., Например, -sortUsingComparator: или -sortUsingFunction:.

...