本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/46271159
思路:
(1)题意为判断给定的整数数组中是否包含相同的元素,如果包含则返回false,否则返回true。
(2)该题比较简单。通过构造一个Map来存放遍历得到的数值,如果在后续的遍历中从Map能够获取到value,则说明有重复的,返回false;否则继续遍历直到结束,返回true。
(3)详情见下方代码。希望对你有所帮助。
算法代码实现如下:
/**
* @author liqqc
*/
import java.util.HashMap;
import java.util.Map;
public class ContainsDuplicate {
public boolean containsDuplicate(int[] nums) {
if (nums == null || nums.length == 0) {
return false;
}
Map<Integer, Integer> maps = new HashMap<Integer, Integer>();
for (int i = 0; i < nums.length; i++) {
if (maps.get(nums[i]) == null) {
maps.put(nums[i], nums[i]);
} else if (maps.get(nums[i]) != null) {
return true;
}
}
return false;
}
}