gpt4 book ai didi

algorithm - 如何快速求助于只有一个更改值的列表?

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

假设我有一个对象列表,这些对象按该对象的特定字段排序。如果其中一个对象更改了该属性,则需要更新其在排序列表中的位置。

我可以使用什么排序算法或“技巧”来非常快速地对该列表进行排序,如果它一次只掉落一个项目?

数据结构是一个数组,我可以直接访问变化项的索引。

我为此使用 Scala,但任何一般提示或指示也会有所帮助。

最佳答案

如果列表已排序,您可以简单地从列表中删除您要更改的元素,更改后,您可以“二进制插入”它,不是吗?这平均需要 log(n) 步。

如果可以,从数组更改为 java.util.TreeMap:删除和插入都将是 log(n) 操作:这将比 O(1) 访问 + O(n) 重新插入更快使用数组的解决方案。

关于algorithm - 如何快速求助于只有一个更改值的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1511284/

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