力扣(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;
}
相关推荐
王燕龙(大卫)7 小时前
滑动窗口问题记录
c++
代码游侠8 小时前
复习——栈、队列、树、哈希表
linux·数据结构·学习·算法
不会代码的小猴8 小时前
C++的第十二天笔记
开发语言·c++·笔记
橘子真甜~8 小时前
C/C++ Linux网络编程10 - http协议
linux·服务器·网络·c++·网络协议·http
碧海银沙音频科技研究院8 小时前
基于物奇wq7036与恒玄bes2800智能眼镜设计
arm开发·人工智能·深度学习·算法·分类
蜗牛love天空8 小时前
bfs广度优先搜索-二叉树遍历
c++
刘家炫8 小时前
C++ 中的模版元编程
c++·现代c++·模版元编程
小白程序员成长日记8 小时前
2025.12.03 力扣每日一题
算法·leetcode·职场和发展
十五年专注C++开发8 小时前
async_simple:一个轻量级C++异步协程框架
开发语言·网络·c++·boost·asio
元亓亓亓9 小时前
LeetCode热题100--20. 有效的括号--简单
linux·算法·leetcode