使用间隔树重叠最大间隔

时间:2010-09-20 20:49:00

标签: algorithm interval-tree

这是一个有趣的问题:给定一组N个区间([start,end]),使用区间树查找重叠区间的最大数量。

StackOverflow上的similar question提供了O(N)解决方案,但如果我们可以将间隔预处理到区间树中,也许我们可以在对数时间内找到解决方案。

事实上,Cormen等人的“算法导论”一书中的练习问题表明,这可以通过增加红黑间隔树来实现。任何想法如何做到这一点?

2 个答案:

答案 0 :(得分:-1)

look的一些示例。您可以使用间隔树。 CGAL为您提供了强大的实施方案。另一个与您的问题相似的有趣example

答案 1 :(得分:-1)

您可以在此处找到基于增强型AVL自平衡树的间隔树:http://code.google.com/p/intervaltree/。它告诉你如何做到这一点。你可以做同样的红黑树。