zoukankan      html  css  js  c++  java
  • LeetCode Merge Intervals

     //风格比较差,用时较长:712ms
    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 Solution; 11 bool incmp(struct Interval a,struct Interval b) 12 { 13 return a.start<b.start; 14 } 15 class Solution { 16 public: 17 18 void mer(vector<Interval> &v,int &i) 19 { 20 if(v[i+1].start<=v[i].end) 21 { 22 if(v[i].end<v[i+1].end) 23 v[i].end=v[i+1].end; 24 v.erase((vector<Interval>::iterator)(&v[i+1])); 25 i--; 26 } 27 } 28 vector<Interval> merge(vector<Interval> &intervals) { 29 // Start typing your C/C++ solution below 30 // DO NOT write int main() function 31 if(intervals.size()<2) 32 return intervals; 33 sort(intervals.begin(),intervals.end(),incmp); 34 35 for(int i=0;i<intervals.size()-1;i++) 36 { 37 mer(intervals,i); 38 } 39 return intervals; 40 } 41 };
  • 相关阅读:
    bzoj2287 [POJ Challenge]消失之物
    bzoj4504 K个串
    Tjoi2016&Heoi2016 字符串
    bzoj2555 SubString
    WC2017 游记
    《大灌篮》观后感
    Codeforces Round #394 (Div. 2)
    bzoj3489 A simple rmq problem
    Goodbye Bingshen
    COGS2216 你猜是不是KMP
  • 原文地址:https://www.cnblogs.com/mengqingzhong/p/3114838.html
Copyright © 2011-2022 走看看