首页 > 其他分享 >219. 存在重复元素 II

219. 存在重复元素 II

时间:2023-11-28 13:33:51浏览次数:42  
标签:nums 重复 iter 219 II int abs mp

你一个整数数组 nums 和一个整数 k ,判断数组中是否存在两个 不同的索引 i 和 j ,满足 nums[i] == nums[j] 且 abs(i - j) <= k 。如果存在,返回 true ;否则,返回 false 。


示例 1:

输入:nums = [1,2,3,1], k = 3
输出:true

> 代码


class Solution {
public:
    bool containsNearbyDuplicate(vector<int>& nums, int k) {
        unordered_map<int, int> mp;
        for (int i = 0; i < nums.size(); i++) {
            auto iter = mp.find(nums[i]);
            if (iter == mp.end()) {
                mp[nums[i]] = i;
            }
            else {
                int r = abs(i - iter->second);
                if (r <= k) return true;
                mp[nums[i]] = i;
            }
        }
        return false;
    }
};

标签:nums,重复,iter,219,II,int,abs,mp
From: https://www.cnblogs.com/lihaoxiang/p/17861758.html

相关文章

  • Count Beautiful Substrings II
    CountBeautifulSubstringsIIYouaregivenastring s andapositiveinteger k.Let vowels and consonants bethenumberofvowelsandconsonantsinastring.Astringis beautiful if:vowels==consonants.(vowels*consonants)%k==0,inothert......
  • LeetCode-Java:80.删除有序数组中的重复项 II
    题目给你一个有序数组nums,请你原地删除重复出现的元素,使得出现次数超过两次的元素只出现两次,返回删除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入......
  • LeetCode-Java:26.删除有序数组的重复项
    题目给你一个非严格递增排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持一致。然后返回nums中唯一元素的个数。考虑nums的唯一元素的数量为k,你需要做以下事情确保你的题解可以被通过:更改数组......
  • SP1557 GSS2 - Can you answer these queries II 题解
    SP1557GSS2-CanyouanswerthesequeriesII更好的阅读体验扫描线。把询问挂在右端点上,扫描右端点,纵轴仍为序列维。对于这种出现多次的数只算一次的,记\(pre_i\)表示\(i\)这个值上一次的出现位置,套路化的可以强制让出现多次的在\(pre_i<l\wedgei\)统计,用二维线段树状......
  • 0.91寸OLED液晶屏显示模块 IIC 12832液晶屏 兼容3.3v-5V
    【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)实验一百三十六:0.91寸OLED液晶屏显示模块IIC12832液晶屏兼容3.3v-5V项目二十三:黄色屏声音可视化器实验接线:max9814接A0oled模块ArdunioUnoGND---------GND接地线VCC---------5V接电源......
  • XXII Open Cup named after E.V. Pankratiev, Grand Prix of IMO
    Contestlink:XXIIOpenCupnamedafterE.V.Pankratiev,GrandPrixofIMO。M.Math题意:给你一个长度为\(n\)的数组\(a\),求有多少对\((i,j)\)满足\(a_i^2+a_j\)是完全平方数。\(1\len,a_i\le10^6\)。根据\(a\)统计出\(cnt\)数据,然后直接暴力枚举值即可。A.......
  • nginx 配置 采用二级跳转方式搭建 nginx+iis(aspx)
    #采用二级跳转方式nginx+iis(aspx)upstreamnginx.alayun.vip{least_conn;serverlocalhost:6666max_fails=30fail_timeout=10s;serverlocalhost:7777max_fails=30fail_timeout=10s;serverlocalhost:8888max_fails=30fail_timeout=1......
  • 给ELement 穿梭框加表单必填项验证,提示文字总是存在问题。该页面有重复提交功能
    背景目前项目中form表单提交中有地方用到了穿梭框,穿梭框是必填项,需要rules验证是否选择了数据,一般穿梭框是change触发 问题但是选择change触发,会出现如下问题,也就是用户一选,下面就触发校验规则了,用户体验很差 尝试解决方案将校验触发改成blur,啊哈解决但是又碰到新的问......
  • 【JAVA】native2ascii命令详解
    参考:<https://blog.csdn.net/sinat_27933301/article/details/60358760><https://blog.csdn.net/zhuiqiuzhuoyue583/article/details/127223542>1、native2ascii简介:native2ascii是sunjavasdk提供的一个工具。用来将别的文本类文件(比如.txt,.ini,.properties,.java等等)编码......
  • RTII
    运行时类型识别即RTTI主要由一下两个运算符实现typeid,返回表达式类型dynamic_cast,将基类指针或引用安全地转换成派生类指针或引用运算符会自动使用指针或引用对象的动态类型。特别适用于想用基类指针或引用来执行派生类的不是虚函数的操作,即无法使用虚函数的情况。但实际上尽......