Day12力扣打卡

打卡记录

找出满足差值条件的下标 II(双指针+维护最大最小)

链接

采用双指针保留间隔 indexDifference 进行遍历,求出慢指针对应一路遍历过来的最大值和最小值。

cpp 复制代码
class Solution {
public:
    vector<int> findIndices(vector<int>& nums, int indexDifference, int valueDifference) {
        int min_idx = 0, max_idx = 0;
        for (int i = indexDifference; i < nums.size(); ++i) {
            int j = i - indexDifference;
            if (nums[j] > nums[max_idx]) max_idx = j;
            if (nums[j] < nums[min_idx]) min_idx = j;
            if (nums[i] - nums[min_idx] >= valueDifference) return {min_idx, i}; 
            if (nums[max_idx] - nums[i] >= valueDifference) return {i, max_idx};
        }
        return {-1, -1};
    }
};
相关推荐
源来有你_几秒前
排序总结和练习
数据结构·算法·排序算法
迷途之人不知返5 分钟前
排序算法锦集(一)
算法·排序算法
500848 分钟前
鸿蒙 Flutter 国密算法应用:SM4 加密存储与数据传输
分布式·算法·flutter·华为·wpf·开源鸿蒙
程序员-King.10 分钟前
day120—二分查找—统计公平数对的数目(LeetCode-2563)
算法·leetcode·二分查找·双指针
leoufung10 分钟前
LeetCode 148:Sort List(链表排序)完整解析:从冒泡到归并
leetcode·链表·list
9ilk13 分钟前
【C++】--- 类型转换
开发语言·c++
Yupureki13 分钟前
《算法竞赛从入门到国奖》算法基础:入门篇-枚举
c语言·数据结构·c++·算法·visual studio
雨季66614 分钟前
蓝桥杯试题及详解文档:统计子矩阵的和等于目标值的数量
算法
子夜江寒19 分钟前
线性回归与KNN算法的核心原理及实践应用
算法·回归·线性回归
ULTRA??19 分钟前
C++两个数组连接类似python的list相加
c++·python