从结构中删除重复项[重复]
Posted
技术标签:
【中文标题】从结构中删除重复项[重复]【英文标题】:remove duplicates from struct [duplicate] 【发布时间】:2019-06-25 14:05:18 【问题描述】:我有一些结构
struct WheelBrand
var id : String?
var name : String?
mutating func removeAll()
self = WheelBrand()
我附上了:
for (_,subJson):(String, JSON) in json["data"]
let id = subJson["make_id"].stringValue
let name = subJson["make"].stringValue
self.itemWheelBrand.append(WheelBrand(id: id, name: name))
如何从我的结构中删除重复项,或者我必须附加唯一值?
【问题讨论】:
已经回答***.com/a/34712330/3141234 【参考方案1】:您可以在完成附加到数组后通过这种方式进行过滤。
var unique = [WheelBrand]()
for arrValue in itemWheelBrand
if !unique.contains(where: $0.id == arrValue.id )
unique.append(arrValue)
【讨论】:
2 个问题:1) 使用数组进行唯一性检查会导致该算法为O(n^2)
,而集合为 O(n)
2) 这错过了使用 filter
的绝佳机会或removeAll
.以上是关于从结构中删除重复项[重复]的主要内容,如果未能解决你的问题,请参考以下文章