我需要一些算法,在对数时间内找到2个排序列表的并集中的顺序统计量(K-th的值)。
即。我有2个排序列表A[1..m]
和B[1...n]
。我需要在排序列表中找到包含2个列表值的项目K,我需要在运行时 - O(lg(max(m,n))
中执行此操作。
我知道如何在运行时O(k)
中执行此操作,扫描两个列表中的极简值,直到我计算K项。
但我不知道如何在O(lg(max(m,n))
上做到这一点。
有什么想法吗?
修改
我在previous similar post中看到了解决方案,但那里没有工作算法。例如,对于列表:a = 13456,b = 278。
那么,也许有人有另一个想法?