给定一个整数数组,判断是否存在重复元素。
如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。
方案1: 笨办法-每个元素从当前位置遍历到数组尾部,若有相同的返回true,反之false
注意空数组,1个元素的数组和两个元素的数组的操作。这种办法能做但是太臃肿,时间复杂度高且if分支太多。
public class ExistDup { public static boolean containsDuplicate(int[] nums) { if(nums.length==0) return false; if(nums.length==1) { if(nums[0]==nums[1]) return true; else return false; } 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; } }
方案2:(more solutions to be accomplished)