Круговой связанный список в какао - PullRequest
1 голос
/ 17 января 2010

Есть ли что-то похожее на круговой связанный список, доступный в Какао?

Я знаю, что NSArray заказан - но я не думаю, что могу использовать 'nextItem' или 'previousItem' - правильно? Кроме того, мне нужно, чтобы следующим элементом последнего элемента был первый элемент.

Я мог бы добавить свои собственные методы nextItem и previousItem, но я удивлен, если Apple еще не внедрила что-то подходящее. Я не могу найти это, хотя, если они имеют.

Ответы [ 2 ]

3 голосов
/ 17 января 2010

Хотя вы, безусловно, можете использовать категорию для добавления поведения к NSArray (как предлагает @darren), вполне возможно, что вам действительно может понадобиться настоящий циклический буфер. Если это так, проверьте структуру CHDataStructures . Помимо CHCircularBufferStack , есть также CHCircularBufferQueue и CHCircularBufferDeque .

1 голос
/ 17 января 2010

Я не знаю ни о какой такой структуре данных кругового списка. Ваша идея о реализации этого вручную кажется хорошей идеей. Я бы использовал категорию:

@implementation NSArray (myCircularList)

-(id)nextItem;
-(id)previousItem;
...