import java.util.*;
class Solution_TimeLimit {  //使用两层for循环会导致超时。此时应该想到用其他方法。public boolean containsNearbyDuplicate(int[] nums, int k) {for(int i=0;i<nums.length-1;i++){for(int j=i+1;j<=i+k;j++){if(nums[i]==nums[j])return true;}}return false;}
}class Solution
{public boolean containsNearbyDuplicate(int[] nums, int k) {if(nums.length<=0 || k<=0)return false;HashMap<Integer,Integer> number=new HashMap<Integer,Integer>();for(int i=0;i<nums.length;i++){if((number.containsKey(nums[i])) && Math.abs(number.get(nums[i])-i)<=k){return true;}else {number.put(nums[i],i);//覆盖之前拥有的键值对(当Map中已经有该键时,再添加时会覆盖原来的键值对)}}return false;}
}class Test219
{public static void main(String[] args){int[] nums={1,2,3,4,1,5,2,3};Solution s=new Solution();System.out.println(s.containsNearbyDuplicate(nums,4));}
}

leetcode 219相关推荐

  1. LeetCode 219. 存在重复元素 II(哈希)

    文章目录 1. 题目 2. 解题 1. 题目 给定数组nums和常数k,存在不同的i.j使得nums[i] = nums[j],且abs(i-j) <= k. 输入: nums = [1,2,3 ...

  2. Leetcode 219. 存在重复元素 II 解题思路及C++实现

    解题思路: 使用 unordered_map 来遍历一次数组,并将同一个数值对应的索引存在一个vector中,所以,vector中的索引刚好也是从小到大排好序的.然后看看vector.size() 大 ...

  3. leetcode 219. 存在重复元素 II(规定步长)

    题目 思路 1 在 hashmap 里面挂一个链表,复杂度比较高,后面有优化版本 import java.util.ArrayList; import java.util.HashMap; impor ...

  4. Leetcode 219. 存在重复元素 II

    解题思路: class Solution { public:bool containsNearbyDuplicate(vector<int>& nums, int k) {unor ...

  5. 2022-4-10 Leetcode 219.存在重复元素

    第一反应暴力,第二反应双指针,发现这个不会 第三反应哈希 class Solution {public:bool containsNearbyDuplicate(vector<int>&a ...

  6. 开启LeetCode之路

    终于有时间开始每天坚持做LeetCode题,博主现在以在CSDN上撰写解题思路为自我监督方式,坚持每天将当天的题目的解题思路记录下来. LeetCode刷题路线:博主将计划按tag顺序做题,先以简单和 ...

  7. LeetCode题解目录

    最新更新于2020.11.27 前往LeetCode主页. 前往GitHub源码.(服务器原因,暂停同步.) 前往码云主页. 已解决 456/1878 - 简单353 中等 90 困难 13 2020 ...

  8. 【前端js】实现剑指offer|leetcode(二)——数组题目集合

    文章目录 一.数组去重 1. 对排序数组去重(leetcode 26. 删除排序数组中的重复项) 2. 检查是否存在重复元素(leetcode 217. 存在重复元素) 3. 检查相邻k个元素是否存在 ...

  9. 玩转算法面试-第四章查找值之leetcod相关笔记

    查找问题 4-1,2 两类查找问题 1 查找有无:set 2 查找对应关系:map 常见的四种操作: insert, find, erase, change(map) 例题 leetcode 349 ...

最新文章

  1. 参加Java培训需要注意哪些
  2. 炸裂!这些大厂跪求的人才太牛了!
  3. 【采集层】Kafka 与 Flume 如何选择
  4. 消费者关注的 Win8 问题汇总(中)
  5. 怎么批量抠复杂的图_怎么用手机修图,抠图、拼图,证件照制作?
  6. Microsoft.XMLHTTP 使用方式
  7. Swift--变量和常量
  8. 误差error,偏置bias,方差variance的见解
  9. 有效的云安全态势始于三个步骤
  10. 通过思科构造局域网_从Cisco DNA中心的管理的和设置的非结构Catalyst 9800无线局域网控制器...
  11. 电脑 运行中 主板喇叭 警报声_网络资讯:电脑电源线是什么
  12. getComputedStyle
  13. 财务 - 注册会计师
  14. Object.keys()的用法
  15. 微软kinect的五个非游戏的应用
  16. 这些神奇 Bug,碰到真是让人目瞪狗呆!
  17. Ps和Excel结合,快速制作透明表格
  18. Java网课基础笔记(7)19-07-19
  19. 做图片用的计算机配置文件,主要用于视频剪辑及图片处理,电脑该如何配置?...
  20. 4.1 Member 的各种调用方式

热门文章

  1. 一个硅谷网工的四年打怪升级史!
  2. python调取高德api_Python调用高德API实现批量地址转经纬度并写入表格的功能
  3. 使用gcc的-E -P选项展开源代码中的宏
  4. PHP基础-表单数据
  5. c excel连接mysql数据库_C语言连接Excel数据库
  6. RSTP、MSTP协议
  7. mysql innodb 读加锁_InnoDB 读大量数据时会加读锁么?
  8. 使用AZ3166(MXChip IoT DevKit)开发translator
  9. Kafka 详细配置
  10. 概论_第4章__方差D(X)的定义和性质