gpt4 book ai didi

algorithm - 给定一个区间,在区间列表中查找所有区间

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:56:24 25 4
gpt4 key购买 nike

假设我有一个这样的范围列表

[[1,3], [2,5], [4,6], [8,10], [12,15], [13,17]]

现在我想找到一个范围说 [3,11] 落入。我的算法应该给我这个范围落入的所有范围。例如这个输出应该是

输出 - [1,3]、[2,5]、[4,6]、[8,10]

我该如何解决这个问题?

PS:我知道线段树可能会有帮助。我可以在哪里构建树来存储间隔并查询位于间隔内的点,但是如何在给定间隔的情况下获取所有间隔。

最佳答案

区间树绝对是你需要的数据结构。我遇到了同样的问题,为了提高性能,我使用了Augmented Interval Tree,其中每个节点除了范围的边界外,还包括与最大值相关的信息节点的子树

您可以在这里找到深入的解释和 Java 实现:Data Structures: Augmented Interval Tree to search for intervals overlapping

关于algorithm - 给定一个区间,在区间列表中查找所有区间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43359039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com