我有两个 NSArray
电影对象,分别称为 DVD 和 VHS。我想找到这些数组的对称差异。我想知道哪些电影在 VHS 中购买而不是在 DVD 中,哪些电影在 DVD 中但不是 VHS。
谁能告诉我是否有快速的算法来解决它(最好是在 C 或 Objective-C 中)?如果我使用字典,解决起来会更快/更容易吗?这种问题叫什么(或者只是“对称差异”)?
谢谢。
最佳答案
使用 NSSet
而不是 NSArray
可能会获得更好的结果,具体取决于您是否希望在列表中允许重复项。
NSSet
为您提供了类似 intersectsSet:
的方法,它应该可以满足您的需求。
如果需要联合功能,可以使用 NSMutableSet
。
关于objective-c - 两个数组的对称差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2288266/