LeetCode Online Judge 题目C# 练习 - Merge Intervals

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].

 1         public static List<Interval> MergeIntervals(List<Interval> intervals)

 2         {

 3             List<Interval> ret = new List<Interval>();

 4 

 5             if (intervals.Count == 0)

 6                 return ret;

 7 

 8             ret.Add(intervals[0]);

 9 

10             for (int i = 1; i < intervals.Count; i++)

11             {

12                 for (int j = 0; j < ret.Count; j++)

13                 {

14                     //invoke InsertInterval

15                     ret = InsertInterval(ret, intervals[i]);

16                 }

17             }

18 

19             return ret;

20         }

代码分析:

  这一个调用了之前的Insert Interval那一题的方法。 先把第一个Interval 插入到ret中,然后迭代之后的,一个一个用InsertInterval方法加到其中。不知道有没有更巧的方法。。。待续。。。。

你可能感兴趣的:(LeetCode)