首页 > 代码库 > 219.Contains Duplicate II

219.Contains Duplicate II

Given an array of integers and an integer k, find out whether there are two distinct indices i and j in the array such that nums[i] = nums[j] and the difference between i and j is at most k.

思路:hashmap很简单。

public class Solution {    public boolean containsNearbyDuplicate(int[] nums, int k) {        Map<Integer,Integer> res=new HashMap<Integer,Integer>();        for(int i=0;i<nums.length;i++)        {            if(!res.containsKey(nums[i]))            {                res.put(nums[i],i);            }            else            {                                if(i-res.get(nums[i])<=k)                    {                        return true;                    }                    else                    {                    res.put(nums[i],i);                    }            }        }        return false;    }}

 

 

219.Contains Duplicate II