swift演算法 存在重複元素

2021-09-25 11:57:19 字數 694 閱讀 1421

1、描述

給定乙個整數陣列,判斷是否存在重複元素。

如果任何值在陣列**現至少兩次,函式返回true。如果陣列中每個元素都不相同,則返回false。

例1:輸入:[1, 2, 3, 1]

輸出:true

例2:輸入:[1, 2, 3, 4]

輸出:false

例3:輸入:[1, 1, 1, 3, 3, 4, 3, 2, 4, 2]

輸出:true

2、演算法

1)、線性查詢

思想:依次逐個檢查列表中的元素,直到找到滿足的元素。

時間複雜度: o(n^2)

func containsduplicate(_ nums : [int])->boolelse

}return false

}

3)雜湊表

思想: 如果存在重複元素,排序後它們應該相鄰。         

時間複雜度 : o(nlogn)。 排序的複雜度是o(nlogn),掃瞄的複雜度是o(n)。整個演算法主要由排序過程決定,因此是o(nlogn)。

func containsduplicate(_ nums : [int])->bool

}return false

}

存在重複元素

給定乙個整數陣列,判斷是否存在重複元素。如果任何值在陣列中出現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。示例 1 輸入 1,2,3,1 輸出 true 示例 2 輸入 1,2,3,4 輸出 false 示例 3 輸入 1,1,1,3,3,4,3,2,4,2 輸出 ...

存在重複元素

給定乙個整數陣列,判斷是否存在重複元素。如果任何值在陣列 現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。示例 1 輸入 1,2,3,1 輸出 true 示例 2 輸入 1,2,3,4 輸出 false 示例 3 輸入 1,1,1,3,3,4,3,2,4,2 輸出 t...

存在重複元素

給定乙個整數陣列,判斷是否存在重複元素。如果任何值在陣列 現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。示例 1 輸入 1,2,3,1 輸出 true 示例 2 輸入 1,2,3,4 輸出 false 示例 3 輸入 1,1,1,3,3,4,3,2,4,2 輸出 t...