体育联盟调度算法

Ara*_*ram 5 java algorithm

我正在为排球建立一个小网站(个人兴趣).赞赏用于安排游戏的算法的帮助

  1. 它可以适用于任意数量的团队和团队.每组内循环.因此,如果一个小组中有6个小组,那么该特定小组中总共将有15个小组.
  2. 比赛持续30分钟
  3. 时间表是均匀分布的,即团队不需要连续进行游戏
  4. 每支球队都以大致相同的分布区间进行比赛,即一支球队不应该在上午8点进行他们的第一场比赛,并等到下一场比赛的晚上
  5. 我们可以安排从上午8点到下午4点开始的比赛.

6支球队就是一个例子.我正在寻找适用于任意数量的团队,法院和团体的通用算法.

问候.

nyc*_*dan 1

我不确定这是否需要算法。由于这是循环赛,有固定数量的球队和比赛,因此您实际上可以只设置一个时间表(两个球场都相同)。

让我解释一下并告诉我您是否需要更多信息。

将进行 15 场比赛,每支球队都会与其他球队进行比赛,因此每支球队将进行 5 场比赛。您可以通过进行 5 组,每组 3 场比赛来进行锦标赛,其中每支球队每组比赛一次。

例子:

1-2
3-4
5-6

1-3
2-5
4-6

3-5
1-4
2-6

1-5
2-4
3-6

4-5
1-6
2-3

任何球队的最长比赛间隔为 4 个时段(2 小时)。没有球队会连续打两场比赛。只需输入团队名称即可开始。

总游戏时间为 7.5 小时,刚好适合上午 8 点至下午 4 点的时段。

注意:我只是快速地将它们放在一起。也许可以重新排序,使最长间隔实际上是 3 场比赛,而不是 4 场,而不牺牲不连续比赛的规则。目前,只有一支球队进入最长间隔(第 3 组和第 4 组之间的第 3 队)。如果这很重要,那就值得研究一下,但实际上,我认为这很好。