《我是歌手》12期宣布名次时用的排序方法是什么排序?

这一期有9位歌手,要宣布前4名出线的选手。

宣布的方式是:

第一轮:先宣布前3位歌手中票数最高的;然后是中间3位中票数最高的;然后是后面3位中的。然后从这3个人中宣布一位票数最高的。显然ta也是全场最高票数,直接出线。

第二轮:剩下的人中,按顺序两两分组,同样先宣布每组得票最高的;然后从4位高票歌手中宣布一位票数最高的。ta是全场排第二的歌手,出线。

第三轮:剩下的人中,每次从两侧最外侧各取一个人组成一组,宣布每组得票最高的人。7个人共比较3次产生3个最高票数的人。还有一个坐在中间的人因为上一轮中已经败给了同组的人所以直接忽略。然后在这3个人宣布票数最高的。ta是全场第三,出线。

第四轮:剩下的人中,有2个人在前几轮中超过了剩下的其他人,但这2个人之间没有比较过。所以宣布其中票数较高的为全场第四,出线。

李健说这是“冒泡法”,我感觉不对,应该不是冒泡排序。那么到底应该算作哪种排序呢?

推荐  (1) | 18人关注关注
15个答案
32 2

小耿神经生物学硕士

2015-03-22 09:40

先说一下我的看法。

首先肯定不是冒泡排序。冒泡排序应该是这样:

坐第一位的李佳薇和坐第二位的李荣浩先比较,如果李佳薇得票高,两人就交换座位;然后坐第二位的人和坐第三位的陈洁仪比较,比陈洁仪高就交换座位;然后坐第三位的人和坐第四位的古巨基比较……直到最后和李健比较,得出全场最高。重复上述过程,得出其它名次。这样全部排完之后,正好是从右向左名次依次降低的。

而节目中的这种排序方法,如果单看第一轮的话,有点像归并排序

归并排序就像这样:先分成小组,小组内部分别排序;然后各小组的第一名互相比较,得出全场最高。但问题是接下来,归并排序要做的是:该小组第二名递补为第一名,继续和其他小组第一名比较。直到全部都比较完,得出全部名次。

而节目中在完成第一轮比较之后,又重新打乱分组,从小组比较开始。可见这是一种效率极低(但是收视率极高)的排序方法。

22 1

首先,这不是排序算法

先宣布前3位歌手中票数最高的;然后是中间3位中票数最高的;然后是后面3位中的。然后从这3个人中宣布一位票数最高的。。这是已经知道排序的情况下才可能做到的事情

简单说。。这里面完全不存在任何和算法沾边的东西,自是故意复杂化流程,看上去高大上有看头

2 0
支持者: Maverick506 Haizi_Ge

兄弟啊,这哪算什么排序算法啊。。。。赞同楼上最后一句话,效率极低的排序方法。。。。

2 0

东门黄狗计算机科学与技术唆使,谜题爱好者,ACGN控

2015-03-23 22:16
支持者: 方程 能整二两

首先感谢小青的邀请...

楼上其实都说了,节目中的流程与排序算法还是有很大区别的.排序的目的是获得所有元素的有序序列,而节目的目的,从技术性上可以认为是获得前k大(小)的元素,之后的元素顺序并不关心。

节目中的总体思路是每轮都挑出当前最大(小)的元素,即第k轮找出第k大(小)的元素,这与选择类排序算法的思路类似。

其中第一轮和第二轮非常类似,第一眼看起来像是归并排序,楼上小耿也提到了,后来想想跟堆貌似也有点小关联,更像一种不太著名的锦标赛排序(Tournament sort),看到这名字其实应该大致能猜到这算法的思路了吧,对,世界杯淘汰赛、网球大师赛。

第三轮其实也是如此,就是分组的方式有点不同,还利用了之前的历史比较结果。

第四轮则基本都是历史比较结果了。

总之,跟排序有关,但不完全是排序。

0 0
还有一个坐在中间的人因为上一轮中已经败给了同组的人所以直接忽略

总觉得哪里不对,假设刚开始9人票数依次为123756489,那么第二轮8人票数依次为:12375648,第三轮1237564,这时中间的人明明票数最高,怎么被忽略了呢?

0 0

除了前3 其他都打乱排序 让每个人尽量有机会多上台

0 0

……感觉起来,也就猴子排序能比这个更低效了。

0 0

明显是 Map-Reduce 啊,哈哈哈哈……

0 0

沈在河专业精神错乱者

2015-03-23 18:44

这个排序方法,就是尽可能的拖时间嘛。。提高收视率,而且不会让你在看到一半就猜到结果的算法。

0 0

我觉得这跟选举有很相近的地方。

貌似我不知道在哪里看到过,选区的划分,候选的人数,选举的方式对选举结果有很大影响。还有一套模型和策略的。哪位大神能详细说说?

我是歌手 这样复杂的排序一方面显得很厉害抓取眼球的同时,另一方面也便于操纵结果。

0 0

前面有人说的很对,既然三个人里面都知道谁最高分,还排个毛序。

如果说是啥,只是一种分组比赛的方式而已,与排序无关。

0 0

这不算是一种排序算法吧,当然可以用来排序。首先是通过几个对比得出优胜者,然后将所有优胜者对比得出最优,这算法应该可以用来乱序中寻找最大值,当然还是要看情况适用

0 0

电视节目追求的是收视率,所以在这里并不需要一个高效的排序算法,

而是如何把悬念保留到最后的最优解的游戏,现场的因素很多,但从最后一步反推,

游戏应该至少包含以下规则:

规则1

淘汰期:

1.最后两人,1人安全,1人淘汰。

2.最后两人,特定1人最后则淘汰,如非最后则第三者淘汰。

非淘汰期:

1.最后两人:1人安全,1人最后。

规则2

过程当中宣布者会给出一定的提示例如:名字的位数,性别,年龄等条件,

但该条件必须命中2人以上。

规则3

在规则2中,命中的多人之间的排名越接近偏离值越低,则被猜出的可能性越低视为高悬念。

反之多人之间偏差值越高,则结果容易被猜出则视为低悬念。

例如:宣布的提示命中两人,分别为3,4名,偏差值记作1分

宣布的提示命中两人,分别为1,7名,偏差值记作6分

规则4

在最后一轮宣布中规则3逆转,余下两人的偏差值越大悬念越大。


最优解:在满足上述规则的限制下寻找最接近0的结果宣布顺序。

0 1

所以说正常人不应该看这种节目是有道理的。

1 2

yy2080Fringe科学博士

2015-03-23 09:13
支持者: Haizi_Ge

“我是歌手”是什么?

能加入肯德基豪华午餐么?

查看更多

添加回答

登录 后回答问题,你也可以用以下帐号直接登录

相关问答

关于我们 加入果壳 媒体报道 帮助中心 果壳活动 家长监控 免责声明 联系我们 移动版 移动应用

©果壳网    京ICP证100430号    京网文[2018] 6282-492号    新出发京零字东150005号     京公网安备11010502007133号

违法和不良信息举报邮箱:jubao@guokr.com    举报电话:18612934101    网上有害信息举报专区    儿童色情信息举报专区