algorithm - 比较两个列表的顺序

标签 algorithm list

是否有比 O(n^2) 更好的算法来重新排序列表 2 以匹配列表 1

列表 1:A B C D

列表 2:B D C A

注意:与列表 1 相比,列表 2 可以有更多、更少甚至完全不同的项目。

最佳答案

如果您可以为列表中的项目类型创建总排序,则可以通过对项目进行排序来为列表 1 创建索引。然后您可以使用该索引对列表 2 重新排序。该算法在时间上是 O(n log n),并且在空间上需要额外的 O(n)。

关于algorithm - 比较两个列表的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4305198/

相关文章:

python - 连接列表 : Python 的元素

algorithm - 中位数快速排序 O(n log n)

r - 连续值特征的特征选择算法POE1ACC

python - 如何将文本列表乘以整数列表并得到一长串文本?

list - 什么是 DList?

Python 序列元素比较

java - 解决二维数组中的 NxN 难题

php - 通过向多个买家出售商品来找到最高总价,受用户输入限制,可以进行多少次单独销售

c++ - rgb转yuv420算法效率

list - 如何为 JAX-WS commons Maven 插件生成列表 setter ?