题解 | #合并区间#

合并区间

https://www.nowcoder.com/practice/69f4e5b7ad284a478777cb2a17fb5e6a

public class Solution {
    public ArrayList<Interval> merge(ArrayList<Interval> intervals) {
        ArrayList<Interval> res = new ArrayList<>();
        if(intervals.size()==0) return intervals;
        Collections.sort(intervals,(Interval a,Interval b)->(a.start-b.start));
        res.add(intervals.get(0));
        for(int i=1;i<intervals.size();i++){
            Interval tmp = res.get(res.size()-1);
            if(tmp.start<=intervals.get(i).end && tmp.end>=intervals.get(i).start){
                res.remove(res.size()-1);
                res.add(new Interval(Math.min(tmp.start,intervals.get(i).start),Math.max(tmp.end,intervals.get(i).end)));
            }else{
                res.add(intervals.get(i));
            }
        }
        return res;
    }
}

全部评论

相关推荐

学历算污点吗?
小何和:快毕业了,BOSS上的od闻着味就来了
点赞 评论 收藏
分享
05-12 17:28
已编辑
门头沟学院 硬件开发
ldf李鑫:不说公司名祝你以后天天遇到这样的公司
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-18 22:30
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务