适用于iPhone的NSOrderedSet?

时间:2011-09-22 11:18:31

标签: iphone objective-c ios

由于某些奇怪的原因,NSOrderedSet似乎没有在iOS中实现。是否有另一个提供类似功能的对象 - 基本上是随机插入/删除对象并按排序顺序访问第一个/最后一个的能力?

在我看来,为了实现基本的FIFO队列等,需要这样的东西。

编辑:我最终做了一个RYO解决方案。

2 个答案:

答案 0 :(得分:2)

一个选项是这个开源数据结构库: http://dysart.cs.byu.edu/CHDataStructures/index.html

在该库中是CHOrderedSet http://dysart.cs.byu.edu/CHDataStructures/interface_c_h_ordered_set.html

唯一的依赖是NSMutableSet,所以它应该适用于所有iOS版本。

编辑:

正如Bourne在上面指出的那样,它也在iOS5中(reference):

  

新的NSOrderedSet集合类提供集合的语义,   因此,每个元素在集合中最多出现一次,但在哪里   元素按特定顺序排列。

如果您对iOS5没有硬依赖,那么CHOrderedSet是一个不错的选择。

答案 1 :(得分:-2)