算法-给定一个整数数组,判断是否存在重复元素

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

分析:算法的核心是用了HashSet不允许有重复元素的特性;
且HashSet中有方法add为当内部有重复元素时返回true;内部没有重复元素时返回ture,利用这个性质只要遍历一次数组就能判断,显得比较方便;
另一个知识点是:return对于一个有返回值的函数其可以起到的作用是可以提前终止函数的执行,直接返回相应的值;所以for语句中的return是会提前结束for语句直至整个方法的执行,直接返回一个值。

猜你喜欢

转载自blog.csdn.net/li_xunhuan/article/details/89840714