方法一:排序
注意:不是最优的
方法二:哈希表
注意:时间复杂度可以降到O(N)
也可以使用set
class Solution {public:bool containsDuplicate(vector<int>& nums) {//使用map进行判断map<int, bool> hmap;for(int i = 0; i < nums.size(); i++){//如果已经存在于map中,直接返回trueif (hmap[nums[i]]){return true;}hmap[nums[i]] = true;}return false;}};
func containsDuplicate(nums []int) bool {//直接使用hmap进行计数hmap := map[int]int{}for _, v := range nums {if _, ok := hmap[v]; ok {return true} else {hmap[v] = 1}}return false}
