相关疑难解决方法(0)

按用户的偏好对一组对象进行排序

给定一组没有特定顺序的n个对象(n = 5在本例中):

{
    apple,
    orange,
    banana,
    cherry,
    cabbage
}
Run Code Online (Sandbox Code Playgroud)

我试图用三个选项给用户几个问题,如下:

banana      vs.      cabbage
      (no preference)
Run Code Online (Sandbox Code Playgroud)

在每个问题之后,它会提出一个具有不同选项的新问题(没有偏好保持不变),有效地收集用户偏好的数据.

在几次(在这种情况下为6或7)问题之后,它将按顺序给出排名最高的对象的有序列表(数组):

{
    cherry,
    cabbage,
    orange,
    apple,
    banana
}
Run Code Online (Sandbox Code Playgroud)

但是,我不知道这样的算法是如何工作的,或者什么时候知道停止.如果这是一个糟糕的问题,我很抱歉,但我对算法设计很陌生.

我想它并不重要,但我使用的是JavaScript.


好的,我在四个月后再次访问,因为我想到了一种新方法来进行排序.

也许,为每个对象设置一个下级列表会更有效率,因此任何不如一个对象的东西都会比它的上级更差.我正在解释这个,所以这是一个视觉:

cherry > cabbage
cabbage > banana
cabbage > apple
apple > orange

thus, cherry > cabbage & banana & apple & orange
Run Code Online (Sandbox Code Playgroud)

用旧方法,得分:

apple vs. orange
apple vs. banana (e.g. apple wins)
apple vs. cherry (e.g. cherry wins)
apple vs. cabbage
orange vs. banana
orange vs. cherry
orange vs. …
Run Code Online (Sandbox Code Playgroud)

javascript sorting algorithm

12
推荐指数
1
解决办法
2356
查看次数

标签 统计

algorithm ×1

javascript ×1

sorting ×1