我理解并编写了 Knuth 的跳舞链接算法来解决精确覆盖问题。我遇到的问题是设置选项矩阵,主要是次要项目。
我要解决的问题是3配置表的枚举。
一个有序的 3 配置表可以被视为一个 3 x n 矩阵,其中第一行是给定的(数字 1 到 n)。每隔一行,每个 n 出现一次且仅出现一次。任何一列的数字都必须不同,这些条件可以用主项来设置。我已经做到了。
还有一个条件我觉得可以用次要物品来处理。任何一对列中的数字必须不同或最多有一对数字相同。例如,这是一个 3 x 8 的表格。如您所见,第 1 列和第 5 列没有共同的数字,但第 1 列和第 2 列只有共同的数字 2。
1 2 3 4 5 6 7 8 2 3 4 5 6 7 8 1 4 5 6 7 8 1 2 3
谁能帮我演示如何为此设置次要项目?