Ios 具有整数键的字典与数组搜索复杂度

Ios 具有整数键的字典与数组搜索复杂度,ios,swift,Ios,Swift,我有结构模型对象,它们都有唯一的id作为属性。 我需要使用包含该结构模型对象的筛选器数组筛选表视图数据源。 对于存储过滤对象,哪种方法更合理 对过滤对象使用数组 func isItemFiltered(item: Item) -> Bool { return fiteredItemsArray.contains(item) } 使用具有唯一id的字典作为密钥 func isItemFiltered(uniqueId: Int) -> Bool {

我有结构模型对象,它们都有唯一的id作为属性。 我需要使用包含该结构模型对象的筛选器数组筛选表视图数据源。 对于存储过滤对象,哪种方法更合理

  • 对过滤对象使用数组

     func isItemFiltered(item: Item) -> Bool { 
         return fiteredItemsArray.contains(item)
     }
    
  • 使用具有唯一id的字典作为密钥

     func isItemFiltered(uniqueId: Int) -> Bool { 
         return filteredItemsDict[uniqueId] != nil
     }
    
我知道数组的搜索复杂度是O(n)。但字典的搜索复杂性如何呢?在我看来,它是O(1),但我不确定。真的是O(1)吗

这可能会有帮助。是的,它是O(1)。若id是唯一的,你们需要执行搜索,你们应该使用字典。