題目
給定一個(gè)整數(shù)數(shù)組,判斷是否存在重復(fù)元素枝缔。
如果任何值在數(shù)組中出現(xiàn)至少兩次,函數(shù)返回 true蚊惯。如果數(shù)組中每個(gè)元素都不相同愿卸,則返回 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
解題思路
- 使用字典標(biāo)記數(shù)字是否存在
- 迭代數(shù)組截型,用字典判斷是否存在當(dāng)前值的key趴荸,如果存在,返回true宦焦,程序中止发钝;如果不存在,把當(dāng)前值保存在記錄在字典波闹。
Swift解法
class Solution {
func containsDuplicate(_ nums: [Int]) -> Bool {
var dicitionary = [Int: Bool]()
for i in nums {
if dicitionary[i] == nil {
dicitionary[i] = true
} else {
return true
}
}
return false
}
}
來(lái)源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/contains-duplicate