愚蠢的提问时间:
有一种手动排序算法,让您一次比较列表2中的项,然后从每对中选择更重要的项。A,还是B?A,还是B?现在,这可以不击中大O(n!)实际上更接近,或者小于O(2n),如果我没记错的话。不,我指的不是红色/黑色或二进制搜索或排序。在我的一生中,我不记得这个过程被称为什么,也不记得编码的确切算法。
它通常用于排序主观列表项。例如:
示例(更重要的是):
从长远来看,我可以解决这个问题。几年前我就做过一次了。我的时间很短,这周还有另外3部分代码要完成。任何帮助都是非常感谢的!
这种类型的名字叫什么?算法是什么?
发布于 2021-12-08 20:03:39
如果您所讨论的只是排序列表,那么任何主要的排序算法都符合您的标准。并且证明了它并不比O(n log )好。所有的大排序(气泡排序,插入排序,堆排序,快速排序,斐波那契排序,等等)具有选择两个元素并进行比较的特性。事实上,这是如此普遍,以至于我们通常关注该规则的异常(例如基排序)。
但是,您的描述听起来不像排序列表,而更像成对比较。这方面有许多变体。例如,一些将保证完整的订购。其他人将处理那些改变主意的用户,产生非传递的命令。一些支持计量统计意义的结果。这完全取决于你要找的是什么。
https://stackoverflow.com/questions/70280852
复制相似问题