手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

ios数组去重的方法

时间:2024-10-28 18:20:47

1、第一种:开辟新的内存空间,然后判断是否存在,若不存在则添加到数组中,得到最终结果的顺序不发生变化。效率分析:时间复杂度为O ( n2):原来集合操作可以通过va造婷用痃lueForKeyPath来实现的,去重可以一行代码实现

ios数组去重的方法
ios数组去重的方法

2、第二种方法:利用NSDictionary去重,字典在设置key-value时,若已存在则更新值,若不存在则插入值,然后获取allV锾攒揉敫alues。若不要求有序,则可以采用此种方法。若要求有序,还得进行排序如果需要按照原来的升序排序

ios数组去重的方法
ios数组去重的方法

3、第三种:利用集合NSSet的特性(确定性、无序性、互异性),放入集合就自动去重了。但是它与字典拥有同样的无序性,所得结果顺序不再与原来一样。如果不要求有序,使用此方法与字典的效率应该是差不多的

ios数组去重的方法

4、如果要求有序,那就得排序,比如这里要升序排序:

ios数组去重的方法

5、也可以直接使用有序集合

ios数组去重的方法
© 手抄报圈