要求:如果数组中包含相同的元素,返回true,否则返回false
注意:思路是先将数组转化为list,再用Set去除重复的元素,比较新的list的长度和原数组长度。如果长度相等,说明数组没有重复的元素,返回false。如果不相等,说明数组中含有重复的元素,返回true。这种方法比逐个比较数组中的元素简单多了。最后记得判断数组为空这个特殊情况。
public static boolean containsDuplicate(int[] nums) {
int l1 = nums.length;
if (nums.length == 0 || nums.length == 1)
return false;
int l2 = 0;
ArrayList list = new ArrayList();
for (int i = 0; i < l1; i++)
list.add(nums[i]);
HashSet h = new HashSet(list);
list.clear();
list.addAll(h);
if (l1 == list.size())
return false;
else
return true;
}