Leetcode Contains Duplicate II

来源:互联网 发布:网络电视能连手机吗 编辑:程序博客网 时间:2024/06/03 23:06

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.


Difficulty: Easy


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


0 0
原创粉丝点击