对于我正在做的项目,我有
形式的集合列表 [ [start, end] ]
例如
[{1, 3} {2, 4} {5, 9} {6, 8} {7, 8}]
数组处于排序状态。
我想找到重叠碰撞的数量。例如,来自示例数据集。
我想要的结果如下。
Interval | Collisions
----------------------
{7,8} | 3
{2,3} | 2
{6,7} | 2
{1,2} | 1
{3,4} | 1
{5,6} | 1
{8,9} | 1
实现它的理想方法是什么?
答案 0 :(得分:3)
您可以将每个list-element转换为两个元素,一个只表示开头,另一个表示结尾。然后,对结果进行排序,为您提供:
现在,您可以遍历列表,跟踪您在每个点输入和退出的套数。