day29(12.9)——leetcode面试经典150

452. 用最少数量的箭引爆气球

452. 用最少数量的箭引爆气球

这几题感觉都大差不差,写的很顺利,心情好了,继续备考六级

题目:

题解:

java 复制代码
class Solution {
    public int findMinArrowShots(int[][] points) {
        //将二维数组进行排序
        Arrays.sort(points, Comparator.comparingInt(p->p[0]));
        //创建一个新的集合
        List<int[]> list = new ArrayList<>();
        //获取二维数组的第一个元素的xstart,xend
        int x1 = points[0][0];
        int x2 = points[0][1];
        //遍历数组中的所有元素
        for(int i=1;i<points.length;i++) {
            //如果当前元素的xstart要>=x1,同时xstart要<=x2,更新x1
            if(points[i][0]>=x1&&points[i][0]<=x2) {
                x1 = points[i][0];
                //如果当前元素的xend要<x2,更新x2
                if(points[i][1]<x2) {
                    x2 = points[i][1];
                }
            }
            //如果当前元素xstart要>x1
            else if(points[i][0]>x1) {
                //将当前的x1,x2加入集合中
                list.add(new int[]{x1,x2});
                //进行更新x1,x2
                x1 = points[i][0];
                x2 = points[i][1];
            }
        }
        //将最后得到的x1,x2加入集合中
        list.add(new int[]{x1,x2});
        //进行返回集合的个数
        return list.size();
    }
}
相关推荐
shehuiyuelaiyuehao2 分钟前
算法50,分治归并,数组中的逆序对
java·算法
DeepAgent27 分钟前
AI Agent 入门指南(05):Agent 循环——观察、思考、行动
面试·agent
阳明山水39 分钟前
校准分位数驱动智能库存决策
人工智能·深度学习·算法·机器学习·架构
顶点多余1 小时前
9.18 面试题总结 --- 绿盟
linux·面试
尾善爱看海2 小时前
《JavaScript 数组操作全攻略:12 类 API + 30 个实战场景 + 20 个避坑指南》
前端·javascript·面试
别动我齐刘海2 小时前
ROS2 Jazzy + C++ 实战路线——进阶学习3
c++·人工智能·vscode·python·算法·机器学习·机器人
zhangfeng11332 小时前
《从“人工适配“到“智能生成“:KernelSwift 跨国产芯片算子迁移全栈方案解读》 —— 强调范式跃迁和跨硬件属性,适合偏架构分析的写法
人工智能·算法·华为·ai编程·npu
0+1112 小时前
算法 --滑动窗口
c++·算法·leetcode
reikocao3 小时前
大场景下 Hessian 特征值放大与退化检测
算法
hetao17338373 小时前
2026-09-18 hetao1733837 的刷题记录
c++·算法