zoukankan      html  css  js  c++  java
  • LeetCode_217. Contains Duplicate

    217. Contains Duplicate

    Easy

    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.

    Example 1:

    Input: [1,2,3,1]
    Output: true

    Example 2:

    Input: [1,2,3,4]
    Output: false

    Example 3:

    Input: [1,1,1,3,3,4,3,2,4,2]
    Output: true
    package leetcode.easy;
    
    public class ContainsDuplicate {
    	public boolean containsDuplicate1(int[] nums) {
    		for (int i = 0; i < nums.length; ++i) {
    			for (int j = 0; j < i; ++j) {
    				if (nums[j] == nums[i]) {
    					return true;
    				}
    			}
    		}
    		return false;
    	}
    	// Time Limit Exceeded
    
    	public boolean containsDuplicate2(int[] nums) {
    		java.util.Arrays.sort(nums);
    		for (int i = 0; i < nums.length - 1; ++i) {
    			if (nums[i] == nums[i + 1]) {
    				return true;
    			}
    		}
    		return false;
    	}
    
    	public boolean containsDuplicate3(int[] nums) {
    		java.util.Set<Integer> set = new java.util.HashSet<>(nums.length);
    		for (int x : nums) {
    			if (set.contains(x)) {
    				return true;
    			} else {
    				set.add(x);
    			}
    		}
    		return false;
    	}
    
    	@org.junit.Test
    	public void test1() {
    		int[] nums1 = { 1, 2, 3, 1 };
    		int[] nums2 = { 1, 2, 3, 4 };
    		int[] nums3 = { 1, 1, 1, 3, 3, 4, 3, 2, 4, 2 };
    		System.out.println(containsDuplicate1(nums1));
    		System.out.println(containsDuplicate1(nums2));
    		System.out.println(containsDuplicate1(nums3));
    	}
    
    	@org.junit.Test
    	public void test2() {
    		int[] nums1 = { 1, 2, 3, 1 };
    		int[] nums2 = { 1, 2, 3, 4 };
    		int[] nums3 = { 1, 1, 1, 3, 3, 4, 3, 2, 4, 2 };
    		System.out.println(containsDuplicate2(nums1));
    		System.out.println(containsDuplicate2(nums2));
    		System.out.println(containsDuplicate2(nums3));
    	}
    
    	@org.junit.Test
    	public void test3() {
    		int[] nums1 = { 1, 2, 3, 1 };
    		int[] nums2 = { 1, 2, 3, 4 };
    		int[] nums3 = { 1, 1, 1, 3, 3, 4, 3, 2, 4, 2 };
    		System.out.println(containsDuplicate3(nums1));
    		System.out.println(containsDuplicate3(nums2));
    		System.out.println(containsDuplicate3(nums3));
    	}
    }
    
  • 相关阅读:
    数据库主体拥有数据库角色,无法删除
    document.documentElement.scrollTop Google Chrome 不 兼容
    js 获取 焦点的元素 兼容 ie 火狐 safari 等
    LNMP分离安装
    WEB开发模式调整
    牛出租车司机(转)
    nginx优化(转)
    pam_mysql编译安装(Ubuntu10.10)
    CruiseControl.NET使用
    nginx学习资料收集(补充中....)
  • 原文地址:https://www.cnblogs.com/denggelin/p/11731136.html
Copyright © 2011-2022 走看看