贪心算法:合并区间

参考资料:代码随想录

题目链接:. - 力扣(LeetCode)

做过用最少数量的箭引爆气球无重叠区间这两道题目后,题意和题解都不难理解。唯一的一点儿难点是对于api的运用。

java 复制代码
class Solution {
    public int[][] merge(int[][] intervals) {
        if(intervals.length == 0) return null;
        Arrays.sort(intervals,(a,b)->Integer.compare(a[0],b[0]));
        //List<int[]> res = new ArrayList<>();
        List<int[]> res = new LinkedList<>();
        //默认有一个区间
        res.add(intervals[0]);
        //遍历区间
        for(int i = 1;i < intervals.length;i++){
            //判断是否是重复区间
            if(intervals[i][0] <= res.getLast()[1]){
                //进行合并操作
                int begin = res.get(i-1)[0];
                int end = Math.max(intervals[i][1],res.get(i-1)[1]);
                res.removeLast();
                res.add(new int[]{begin,end});
            }else{
                //不重复则直接放入
                res.add(intervals[i]);
            }
        }
        return res.toArray(new int[res.size()][]);
    }
}
相关推荐
小侯不躺平.18 小时前
C++ Boost库【6】时间戳整体综合
开发语言·c++·算法
wuweijianlove18 小时前
算法稳定性分析中的输入扰动响应模型的技术6
算法
视觉算法小姥18 小时前
yolov11-obb在rk芯片部署的onnx模型输出的剪枝处理
算法·yolo·剪枝
KaMeidebaby18 小时前
卡梅德生物技术快报|糖蛋白纯化 Sevage 法工艺优化:正交与响应面法对比实操分析
人工智能·其他·算法·百度·新浪微博
前网易架构师-高司机18 小时前
ROS2 Jazzy+Gazebo Harmonic 环境下,用 URDF 搭建机器人,配置物理属性、插件与桥接,修复车轮和激光雷达故障 (手把手保姆级教程)
开发语言·算法·golang·机器人·ros
wjcroom18 小时前
时空和电子1-平直相对论时空的构建
算法·重构·物理学
吃好睡好便好18 小时前
矩阵的求幂运算
人工智能·学习·线性代数·算法·matlab·矩阵
计算机安禾18 小时前
【算法分析与设计】第18篇:改进的最大流算法:Edmonds-Karp与Dinic
大数据·人工智能·算法
buhuizhiyuci18 小时前
【算法篇】初识双指针
算法
超梦dasgg19 小时前
归并排序 Java 实现(递归 + 非递归)
java·算法·排序算法