在这里插入图片描述
思路一:暴力解法

class Solution {
    public boolean containsDuplicate(int[] nums) {
        int result = 0;
        for(int i = 0;i<nums.length;i++){
            for(int j = i+1;j<nums.length;j++){
                if(nums[i]==nums[j]){
                    return true;
                }
            }
        }
        return false;
    }
}

结果超时了
在这里插入图片描述
思路二:先排序,再从头看

class Solution {
    public boolean containsDuplicate(int[] nums) {
        Arrays.sort(nums);
        for(int i = 0;i<nums.length-1;i++){
           if(nums[i]==nums[i+1]){
               return true;
           }
        }
        return false;
    }
}

实现效果了,不过效率一般
在这里插入图片描述
思路三:使用set不能添加重复值的特性

class Solution {
    public boolean containsDuplicate(int[] nums) {
       HashSet<Integer> hs =  new HashSet<Integer>();
        for(int i = 0;i<nums.length;i++){
           if(!hs.add(nums[i])){
               return true;
           }
        }
        return false;
    }
}

时间效率上有一些进步
在这里插入图片描述

更多推荐