我有一行数字1:n
。我想添加第二行,也是使用数字1:n
,但这些数字应该是随机的,同时满足以下条件:
- 两行中没有相同的数字
- 没有重复出现的数字组合
例如,在下面的示例中:
Row 1: 1 2 3 4 5 6 7 ...
Row 2: 3 6 15 8 13 12 7 ...
数字7在第1行和第2行的同一位置出现(即在第7个位置;因此不符合规则1)
而在以下情况中
Row 1: 1 2 3 4 5 6 7 ...
Row 2: 3 7 15 8 13 12 2 ...
数字2和7的组合出现了两次(分别在位置2和7,因此不符合规则2)。
可能手工完成这个任务是可行的,但耗时过长(至少在一个合理的范围内),然而在MATLAB中必定会有相当优雅的解决方案。
1->2
2->3
,3->1
。如果你希望禁止这样的分组方式,那么我在我的答案中描述了一个简单的解决方案。 - Aaron McDaid