Objective-C中的Min / Max Heap或Priority Queue数据结构

时间:2016-11-06 06:01:53

标签: ios objective-c iphone macos

是否存在由Objective-C中的系统框架提供的数据结构的最小/最大堆或优先级队列?

我可以自己实现它或者使用第三方库,但我只是好奇系统是否像Java一样提供它。

1 个答案:

答案 0 :(得分:1)

对于优先级队列:否.Cocoa中没有通用标准,即使NSOperationQueue类使用优先级队列。

最小 - 最大堆:不。你永远找不到。最小 - 最大堆是实现优先级队列的结构。 Cocoa的API永远不会构建在实现之上,而是建立在最终集合之上。 I. e。对于有序集合,您有NSArray。有几种结构用于实现该数组。但是你总是得到最终产品NSArray独立于内部使用的结构。

这是Cocoa的设计原则。

因此,如果某人(Apple,其他人,您)实现了优先级队列,他可能会使用min-max堆。但是你永远不会知道,如果它是根据Cocoa的概念实现的。