Keep Learning

永远年轻,永远热泪盈眶

LeetCode 217. Contains Duplicate

问题描述

  • 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.
  • 地址

问题分析

  • 用额外空间:
    set来判重,O(N)
  • 不用额外空间
    先排序。然后固定一个数,对剩下的数进行二分查找 O(NlogN)

代码实现

class Solution {
    public boolean containsDuplicate(int[] nums) {
        if (nums == null || nums.length == 0) {
            return false;
        }
        HashSet<Integer> set = new HashSet<>();
        for (int i = 0; i < nums.length; i++) {
            if (! set.add(nums[i])) {
                return true;
            }
        }
        return false;
    }
}
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zjxxyz123/article/details/79959818
个人分类: LeetCode
上一篇LeetCode 447. Number of Boomerangs
下一篇LeetCode 219. Contains Duplicate II
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭