题目如下:给定一个源区间[x,y]和N个无序的目标区间[x1,y1] [x2,y2] ... [xn,yn],判断源区间[x,y]是不是在目标区间内
思路:先对现有目标区间数组进行预处理,即先对目标区间按照开始时间进行排序,然后合并能合并的区间,最后用二分查找在合并后的区间中判断
时间复杂度分析:
排序为O(N*lgN),合并的时间为O(N),查找的时间为O(lgN),所以总的时间复杂度为O(N*lgN)
代码如下:
题目如下:给定一个源区间[x,y]和N个无序的目标区间[x1,y1] [x2,y2] ... [xn,yn],判断源区间[x,y]是不是在目标区间内
思路:先对现有目标区间数组进行预处理,即先对目标区间按照开始时间进行排序,然后合并能合并的区间,最后用二分查找在合并后的区间中判断
时间复杂度分析:
排序为O(N*lgN),合并的时间为O(N),查找的时间为O(lgN),所以总的时间复杂度为O(N*lgN)
代码如下: