力扣(LeetCode)算法_C++——存在重复元素 II

存在重复元素 II

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

示例 1:

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

输出:true

示例 2:

输入:nums = [1,0,1,1], k = 1

输出:true

示例 3:

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

输出:false

cpp 复制代码
bool containsNearbyDuplicate(vector<int>& nums, int k) {
    int i, j;
    int n = nums.size();
    for (i = 0; i < n; i++)
    {
        for (j = i + 1; j <= i + k && j < n; j++)
            if (nums[i] == nums[j]) {
                return true;
            }
        if (n > 3000)
        {
            i = j - 1;
        }
    }
    return false;
}
相关推荐
Vect__2 小时前
基于线程池从零实现TCP计算器网络服务
c++·网络协议·tcp/ip
草履虫建模5 小时前
力扣算法 1768. 交替合并字符串
java·开发语言·算法·leetcode·职场和发展·idea·基础
naruto_lnq7 小时前
分布式系统安全通信
开发语言·c++·算法
Jasmine_llq8 小时前
《P3157 [CQOI2011] 动态逆序对》
算法·cdq 分治·动态问题静态化+双向偏序统计·树状数组(高效统计元素大小关系·排序算法(预处理偏序和时间戳)·前缀和(合并单个贡献为总逆序对·动态问题静态化
爱吃rabbit的mq8 小时前
第09章:随机森林:集成学习的威力
算法·随机森林·集成学习
(❁´◡`❁)Jimmy(❁´◡`❁)9 小时前
Exgcd 学习笔记
笔记·学习·算法
YYuCChi9 小时前
代码随想录算法训练营第三十七天 | 52.携带研究材料(卡码网)、518.零钱兑换||、377.组合总和IV、57.爬楼梯(卡码网)
算法·动态规划
CSDN_RTKLIB10 小时前
【四个场景测试】源文件编码UTF-8 BOM
c++
不能隔夜的咖喱10 小时前
牛客网刷题(2)
java·开发语言·算法
VT.馒头10 小时前
【力扣】2721. 并行执行异步函数
前端·javascript·算法·leetcode·typescript