码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode--Merge Intervals

时间:2014-08-09 21:25:19      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   for   art   ar   div   

简单题:先按左左边排序,然后对输入的区间和当前结果合并

 1 /**
 2  * Definition for an interval.
 3  * struct Interval {
 4  *     int start;
 5  *     int end;
 6  *     Interval() : start(0), end(0) {}
 7  *     Interval(int s, int e) : start(s), end(e) {}
 8  * };
 9  */
10 class cmp
11 {
12     public:
13     bool operator()(const Interval&a,const Interval&b)
14     {
15         return a.start < b.start;
16     }
17 };
18 bool comp(const Interval &lhs, const Interval &rhs)
19  {
20      return lhs.start < rhs.start;
21  }
22 class Solution {
23 public:
24     vector<Interval> merge(vector<Interval> &intervals) {
25         sort(intervals.begin(),intervals.end(),cmp());
26         vector<Interval> ret;
27         int i;
28         for(i = 0 ; i < intervals.size() ; ++i)
29         {
30             if(i == 0)
31             {
32                 ret.push_back(intervals[0]);
33             }
34             else
35             {
36                 int size = ret.size();
37                  if (ret[size-1].start <= intervals[i].start && intervals[i].start <= ret[size-1].end)
38                      ret[size-1].end = max(ret[size-1].end, intervals[i].end);
39                  else
40                      ret.push_back(intervals[i]);
41             }
42         }
43         return ret;
44     }
45 };

 

LeetCode--Merge Intervals,布布扣,bubuko.com

LeetCode--Merge Intervals

标签:style   blog   color   io   for   art   ar   div   

原文地址:http://www.cnblogs.com/cane/p/3901540.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!