我想知道是否使用Set而不是Array我的方法可以first(where:)
变成Complexity:O(1)吗?
苹果公司说first(where:)
方法是O(n),通常是这样吗,还是取决于我们如何使用它?
例如,看一下这两种编码方式:
var numbers: [Int] = [Int]()
numbers = [3, 7, 4, -2, 9, -6, 10, 1]
if let searchResult = numbers.first(where: { value in value == -2 })
{
print("The number \(searchResult) Exist!")
}
else
{
print("The number does not Exist!")
}
和这个:
var numbers: Set<Int> = Set<Int>()
numbers = [3, 7, 4, -2, 9, -6, 10, 1]
if let searchResult = numbers.first(where: { value in value == -2 })
{
print("The number \(searchResult) Exist!")
}
else
{
print("The number does not Exist!")
}
我们可以说第二种复杂度是O(1)吗?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句