最高重合度算法
问题描述:
求解一些有位置标记的线段中最高重合度,比如input:2 -> 5, 3 -> 9, 5 -> 11, 10 -> 15 output:3
算法思想描述:可以使用count变量来记录当前进入的线段数,而是用max来记录最大进入的线段数;每当进入一个线段时,count+1,此时比较max值,看是否需要修改;出线段范围时,count-1.以上面的输入为例(同一个数字重合先算进入,再算离开):
运算过程如下表:
count | max | |
init | 0 | 0 |
2 | 1 | 1 |
3 | 2 | 2 |
5 | 3 | 3 |
5(出) | 2 | 3 |
9 | 1 | 3 |
10 | 2 | 3 |
11 | 1 | 3 |
15 | 0 | 3 |
所以最后的结果是:3