【问题标题】:Sort or partial sort minimizing comparisons排序或部分排序最小化比较
【发布时间】:2015-10-11 03:46:29
【问题描述】:

我希望对颜色列表进行排序或部分排序。从最美到最丑。一次比较两种颜色是由一个人在屏幕上进行的。我有 10 种颜色,我需要对它们进行排序或部分排序,向人类询问不太可能的问题。我愿意使用任何数据结构。我只需要要求人类进行尽可能少的比较。我怎样才能做到这一点?做一个完整的排序需要多少个问题?如果是部分排序,结果会是什么样子?我可以从结果中得到什么?谢谢

+1 用于 javascript 示例;)

编辑: 我可以使用(如果 a>b 和 b>c 然后 a>c)这样的概念,所以我可以使用复杂的排序算法。我愿意尽可能多地包含这样的概念

我需要能够对少于 15 次比较的 10 个元素进行排序。有可能吗?

【问题讨论】:

    标签: javascript algorithm sorting comparison logic


    【解决方案1】:

    我不理解美丽和丑陋的颜色。但是你有 10 种颜色,同时比较两种颜色将是 10C2 = 45(不少于,不多)组合数。

    var colors = [color1, color2, ....];
    var i = 0, j = 0, temp = "";
    while (i < 10) {
       j = i + 1;
       while (j < 10) {
          if {user_chooses_color2} {
             temp = colors[j];
             colors[j] = colors[i];
             colors[i] = temp;
          }
          j++;
       }
       i++;
    }
    

    【讨论】:

    • 我已经修改了我的问题。
    • 你好@Trinadh Yerra 你知道还有什么可以帮助我的吗?谢谢你
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-21
    • 2012-04-24
    • 2018-10-23
    • 2014-12-22
    相关资源
    最近更新 更多