[LeetCode 56]Merge Intervals

题目链接:merge-intervals

import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;/** * 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]. * */public class MergeIntervals {static class Interval {int start;int end;Interval() {start = 0;end = 0;}Interval(int s, int e) {start = s;end = e;}}//168 / 168 test cases passed.//Status: Accepted//Runtime: 326 ms//Submitted: 1 minute agostatic List<Interval> merge(List<Interval> intervals) {List<Interval> mergeIntervals = new ArrayList<Interval>();if(intervals.size() == 0)return mergeIntervals;Collections.sort(intervals, new Comparator<Interval>() {public int compare(Interval int1, Interval int2) {return int1.start – int2.start;}});Interval preInterval = intervals.remove(0);for (Interval interval : intervals) {if (preInterval.end < interval.start) {mergeIntervals.add(preInterval);preInterval = interval;} else {if(preInterval.end < interval.end)preInterval.end = interval.end;}}mergeIntervals.add(preInterval);return mergeIntervals;}public static void main(String[] args) {Interval i1 = new Interval(2, 6);Interval i2 = new Interval(1, 3);Interval i3 = new Interval(8, 10);Interval i4 = new Interval(15, 18);List<Interval> intervals = new ArrayList<Interval>();intervals.add(i1);intervals.add(i2);intervals.add(i3);intervals.add(i4);merge(intervals);}}

,那我想明天可以是我的来世。

[LeetCode 56]Merge Intervals

相关文章:

你感兴趣的文章:

标签云: