使用NSSet vs NSDictionary

时间:2015-09-24 13:39:53

标签: objective-c nsdictionary nsset

我知道元素在NSSet和NSDictionary中的存储方式有所不同, https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Collections/Collections.html

但是从开发的角度来看,我什么时候应该使用NSSet vs NSDictionary? 两者的时间复杂度为O(1)

编辑:我遇到了问题 - 从数组中删除重复项。 一种解决方案将元素存储在NSDictionary中以删除重复项,另一种解决方案将元素存储在NSSet中。

我想知道哪种方法更好

2 个答案:

答案 0 :(得分:4)

使用NSDictionary获取一些工作代码。然后用NSSet替换NSDictionary。走着瞧吧。启蒙应该遵循。

如果它不起作用,时间复杂度有什么用呢?

答案 1 :(得分:4)

NSSetNSDictionary非常不同。 NSSet是一组元素,同时NSDictionary会保留键值对的列表,因此您可以在拥有密钥时直接访问Value。将NSSetNSArray进行比较而不是NSDictionary进行比较更有意义。