假设我有 N 支球队,如何生成一个赛程列表,其中每支球队都与其他球队比赛,对此的最佳实践是什么。有没有一种已知的算法可以很好地做到这一点?效率并不是真正的必需品,因为它只需要每个赛季产生一次。
更具体地说,我将从一些定义开始:
我有 N 个团队...T_1,T_2,...,T_n。如果 N 是奇数,则包括一个“幽灵”团队以使团队数量为偶数。
一周的一组赛程是一组 N/2 对,没有球队超过一对。
“赛程表”是一组赛程表,每个球队都与其他球队配对。
我想做的是创建一个“夹具列表”,其中包含某种随机元素。
谢谢
Here http://en.wikipedia.org/wiki/Round-robin_tournament#Scheduling_algorithm是通常的方式。如果你需要一些随机元素,你可以shuffle http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle首先是球队名单。这并不重要,因为无论如何,每支球队都会互相比赛。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)