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.
這道題用hashset就很容易做了。用hashset中的add method。因為add只能add在hashset中沒有的元素。所以同一個元素不可能被add成功第二次。
代碼如下。(loop那里可以用enhanced loop再簡化下,不過我懶得改了)
public class Solution { public boolean containsDuplicate(int[] nums) { if(nums==null||nums.length==0){ return false; } HashSet<Integer> test=new HashSet<Integer>(); for(int i=0;i<nums.length;i++){ if(!test.add(nums[i])){ return true; } } return false; }}
新聞熱點
疑難解答