217. 存在重复元素
给你一个整数数组 nums
。如果任一值在数组中出现 至少两次 ,返回 true
;如果数组中每个元素互不相同,返回 false
。
示例 1:
1 | 输入:nums = [1,2,3,1] |
示例 2:
1 | 输入:nums = [1,2,3,4] |
示例 3:
1 | 输入:nums = [1,1,1,3,3,4,3,2,4,2] |
提示:
1 <= nums.length <= 105
-109 <= nums[i] <= 10
题解1:
1 | public boolean containsDuplicate(int[] nums) { |
- 时间复杂度:O(N)
- 空间复杂度:O(N)
题解2:
1 | public boolean containsDuplicate(int[] nums) { |
- 时间复杂度:O(N log N),排序所需的时间复杂度
- 空间复杂度:O(1),没有用到额外空间,若深究,Arrays.sort(nums)使用到了栈空间,为O(log N)