力扣(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;
}
相关推荐
_codemonster37 分钟前
深度学习实战(基于pytroch)系列(四十八)AdaGrad优化算法
人工智能·深度学习·算法
老王熬夜敲代码41 分钟前
C++中的thread
c++·笔记·面试
鹿角片ljp1 小时前
力扣140.快慢指针法求解链表倒数第K个节点
算法·leetcode·链表
qq_479875431 小时前
C++ 鸭子类型” (Duck Typing)
开发语言·c++
自由生长20241 小时前
位运算第1篇-异或运算-快速找出重复数字
算法
崇山峻岭之间1 小时前
C++ Prime Plus 学习笔记033
c++·笔记·学习
xxxxxmy2 小时前
同向双指针(滑动窗口)
python·算法·滑动窗口·同向双指针
暗然而日章2 小时前
C++基础:Stanford CS106L学习笔记 7 类
c++·笔记·学习
释怀°Believe2 小时前
Daily算法刷题【面试经典150题-5️⃣图】
算法·面试·深度优先
List<String> error_P2 小时前
数据结构:链表-单向链表篇
算法·链表