首页 > 学院 > 开发设计 > 正文

LeetCode 56. Merge Intervals

2019-11-08 02:19:17
字体:
来源:转载
供稿:网友

Given a collection of intervals, merge all overlapping intervals.

For example,Given [1,3],[2,6],[8,10],[15,18],

return [1,6],[8,10],[15,18].

answer:

class Solution {public:    vector<Interval> merge(vector<Interval>& intervals) {        sort(intervals.begin(),intervals.end(),mySort);        vector<Interval> result;        if(intervals.size() == 0) return result;        int interStart = intervals[0].start, interEnd = intervals[0].end;        result.push_back(intervals[0]);        for( int j = 1; j < intervals.size(); j ++){            if(intervals[j].start <= result.back().end){                result.back().end = max(result.back().end,intervals[j].end);            }            else{                result.push_back(intervals[j]);            }        }        return result;    }        static bool mySort(Interval a, Interval b){        // if((a).start < (b).start) return true;        // else if((a).start == (b).start){        //     return (a).end <= (b).end;        // }        // else return false;        return a.start < b.start;    }};


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表