我正在尝试使用链接列表创建锦标赛支架,其中锦标赛的每个匹配是具有2个父节点的节点。这可能吗?
答案 0 :(得分:0)
不确定链表。我认为你需要一个班级团队和一个班级匹配。该匹配将有2个字段,Team1和Team2,一个字段轮次(前16个,前8个等)和一个NextMatch字段,它是Match的一个实例,它将是下一轮。所有这些匹配都可以放在ArrayList中。或者我就是这样做的。
答案 1 :(得分:0)
您描述的结构是树,而不是列表。
虽然理论上可以使用list作为数组建模,然后使用数组来建模任意数据结构,但结果将是一个复杂,低效的混乱。
更好的想法是使用自定义Match
类对匹配进行建模;例如像这样的东西:
public class Match {
private Player player1;
private Player player2;
private Match leadupMatch1; // null in first round
private Match leadupMatch2; // null in first round
private Match winnersMatch;
private Match losersMatch; // if needed
private Result result;
...
}
public class Player {
...
}
public enum Result {
NONE,
PLAYER_1_WINS,
PLAYER_2_WINS
}