letecode [217] - Contains Duplicate

 Given an array of integers, find if the array contains any duplicates.

Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct.

Example 1:

Input: [1,2,3,1]
Output: true

Example 2:

Input: [1,2,3,4]
Output: false

Example 3:

Input: [1,1,1,3,3,4,3,2,4,2]
Output: true

题目大意

   判断数组中是否存在重复的元素。

理  解:

   用set保存访问过的元素,若当前元素在set中则存在重复元素。

代 码 C++:

class Solution {
public:
    bool containsDuplicate(vector<int>& nums) {
        set<int> s;
        for(int i=0;i<nums.size();++i){
            if(s.count(nums[i])!=0){
                return true; 
            }
            s.insert(nums[i]);
        }
        return false;
    }
};

运行结果:

  执行用时 :64 ms, 在所有C++提交中击败了54.53%的用户

  内存消耗 :16.8 MB, 在所有C++提交中击败了12.05%的用户
posted @ 2019-06-13 16:57  lpomeloz  阅读(99)  评论(0编辑  收藏  举报