Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sorting 需要自定义排序算法_Sorting_Language Agnostic - Fatal编程技术网

Sorting 需要自定义排序算法

Sorting 需要自定义排序算法,sorting,language-agnostic,Sorting,Language Agnostic,我需要一种不同寻常的排序算法,这种算法对很多人都非常有用,但我更愿意对具体的应用程序含糊其辞,因为我在研究中没有找到特别好的解决方案,我想知道这里的人是否可以提出新的想法。这是一个真实的排序,因此它有一些限制,这与许多算法不同。以下是要求 要排序的列表没有统一数量的元素 元素排序所依据的值不能直接观察到 两个元素的比较操作成本很高 您可以按照自己的意愿并行运行任意多个比较操作,而不会增加费用 每个元素一次只能参与一个比较操作 比较运算的结果仅给出大于、小于或等于 考虑到元素隐藏值的差异,比较操

我需要一种不同寻常的排序算法,这种算法对很多人都非常有用,但我更愿意对具体的应用程序含糊其辞,因为我在研究中没有找到特别好的解决方案,我想知道这里的人是否可以提出新的想法。这是一个真实的排序,因此它有一些限制,这与许多算法不同。以下是要求

  • 要排序的列表没有统一数量的元素
  • 元素排序所依据的值不能直接观察到
  • 两个元素的比较操作成本很高
  • 您可以按照自己的意愿并行运行任意多个比较操作,而不会增加费用
  • 每个元素一次只能参与一个比较操作
  • 比较运算的结果仅给出大于、小于或等于
  • 考虑到元素隐藏值的差异,比较操作可能会导致不正确的动态值
  • 当比较给出不正确的值时,我们没有任何指示
  • 我们可以假设比较的动态错误率是正态分布的。
    元素可能间歇性地不可用于比较

所以,在黑暗中拍摄,希望有人发痒。一般的要点是,您希望找到建立一组并行比较的最佳方法,以尽可能多地显示有关正确排序顺序的信息。一个好的答案应该能够描述n组操作后的错误概率。我相信有些人能够根据这些信息找出要排序的内容,但对于那些不能这样做的人,相信我,会有很多很多人从这个算法中受益。

我会看看比较器网络。其中一个假设是并行进行多重比较的能力,通常的目标是最小化比较的“层”数量。所谓的AKS网络可以通过这种方式实现O(logn)时间

但他们的工作假设所有的比较都是正确的。我想处理错误可以在以后进行,在主排序之后,通过增加一层比较器来比较每两个连续的项目

起点:

无论如何,这看起来更像是一个科学研究课题