zoukankan      html  css  js  c++  java
  • Contains Duplicate 解答

    Question

    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.

    Solution 1 HashMap

    Time complexity O(n), space cost O(n)

     1 public class Solution {
     2     public boolean containsDuplicate(int[] nums) {
     3         Map<Integer, Integer> counts = new HashMap<Integer, Integer>();
     4         int length = nums.length;
     5         if (length <= 1)
     6             return false;
     7         for (int i = 0; i < length; i++) {
     8             if (counts.containsKey(nums[i]))
     9                 return true;
    10             else
    11                 counts.put(nums[i], 1);
    12         }
    13         return false;
    14     }
    15 }

    Solution 2 Set

    Time complexity O(n), space cost O(n)

     1 public class Solution {
     2     public boolean containsDuplicate(int[] nums) {
     3         int length = nums.length;
     4         if (length <= 1)
     5             return false;
     6         Set<Integer> set = new HashSet<Integer>();
     7         for (int i : nums) {
     8             if (!set.add(i))
     9                 return true;
    10         }
    11         return false;
    12     }
    13 }
  • 相关阅读:
    iis日志时间与本地日期不一样
    iis原理介绍
    IIS如何确定请求的处理程序
    handle 和module
    调试IIS服务器
    JS面向对象学习
    图片垂直居中大杂烩
    淘宝双十一页面(Flexible)
    用rem适配移动端
    About getByClass
  • 原文地址:https://www.cnblogs.com/ireneyanglan/p/4799829.html
Copyright © 2011-2022 走看看