Leetcode—228.汇总区间【简单】

2023每日刷题(五十六)

Leetcode---228.汇总区间

解题思路

我们可以用双指针left 和 right找出每个区间的左右端点。

遍历数组,当right + 1< n 且 numsright+1=numsright+1 时,指针right向右移动,否则区间 left, right 已经找到,将其加入答案,然后将指针left移动到right + 1的位置,继续寻找下一个区间。

实现代码

cpp 复制代码
class Solution {
public:
    vector<string> summaryRanges(vector<int>& nums) {
        vector<string> ans;
        auto f = [&](int i, int j) {
            return (i == j) ? to_string(i): to_string(i) + "->" + to_string(j);
        };
        int left = 0, right = 0;
        for(; left < nums.size(); left = right + 1) {
            right = left;
            while(right + 1 < nums.size() && nums[right] + 1 == nums[right + 1]) {
                right++;
            }
            ans.emplace_back(f(nums[left], nums[right]));
        }
        return ans;
    }
};

运行结果


之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关推荐
蒸蒸yyyyzwd1 小时前
从面经中学到的三件事
c++·笔记
时时三省1 小时前
【时时三省】计算机c语言二级考试选择题重点
c++
罗西的思考1 小时前
[Agent Memory / 强化学习] MemPO源码学习笔记 --- (2)--- 训练
人工智能·算法·机器学习
深圳市方中禾科技3 小时前
FZH1625 LCD 驱动芯片深度评测与实战指南
算法·led
我不会起名字3223 小时前
一天一道算法题(34):回溯法的经典例题(子集)
java·数据结构·python·算法·golang·深度优先·力扣
jianqiang.xue3 小时前
如何延长周末体验感?
经验分享·生活
IT小白杨4 小时前
社媒多账号运营的环境隔离:一张图谱模型,解释清“为什么换IP还是被连坐“
经验分享·笔记·矩阵·指纹浏览器
ThornArmor4 小时前
重铸1996|肉体渲染:关节的裂缝:分段模型积木拼装与未成熟的 RSP 矩阵骨骼动画形变
c语言·汇编·c++·python·硬件架构·游戏机
测试老哥5 小时前
接口测试的测试用例应该怎么写?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
huang5791475 小时前
哈希算法的抗碰撞机制与安全性增强策略4
算法