Skip to content
tomking1988 edited this page Dec 4, 2013 · 4 revisions

Border: 题意大概就是有一堆区间段,如果一个区间能被包含在别的区间中则删除,求总共删除的区间段的个数。

  1. 把区间段排序,起点小的排在前,如果起点相等,那么终点大的排在前。从而保证区间段只能被排在它前面的区间段包含。排序要O(nlogn)

  2. 排序完后,从前往后扫区间段,参考区间段初始化为第一个区间段, counter = 0

    对于每个区间段,如果该区间段能被包含于参考区间段内,counter加一

    如果不能,参考区间段更新为当前区间段 (为什么?留给大家思考)

  3. 返回counter

区间段的插入,删除,合并是经典题,其他必做的参见 http://oj.leetcode.com/problems/merge-intervals/

http://oj.leetcode.com/problems/insert-interval/

Clone this wiki locally