我需要生成這個沒有像numpy數組的外部庫的任何幫助。
我有大小N = 5對5×5矩陣,和元素的原料列表可以說:所有可能的矩陣(列表清單)只包含來自原始列表元素的元素python
elements = [1,2,3]
我要生成該網格的所有可能的置換(5 * 5):
例如N = 5
[[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
]
[[2,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
]
[[3,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
]
[[1,2,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
]
[[2,2,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
]
[[3,2,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
]
[[1,3,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
]
...
[[2,3,3,3,3],
[3,3,3,3,3],
[3,3,3,3,3],
[3,3,3,3,3],
[3,3,3,3,3],
]
[[3,3,3,3,3],
[3,3,3,3,3],
[3,3,3,3,3],
[3,3,3,3,3],
[3,3,3,3,3],
]
如果有可能最有效的我可以產生這個。
已經在網格上嘗試itertools.permutations
。
我改變爲N = 5,因爲元素的數量少於適合該行的數量,並且這樣更加困難。
你能再次檢查? 它不重複,因爲它會生成一個列表的所有排列。 我需要生成所有可能的列表,然後可能是產品。它更難的問題。 – Tal
我想你也不會被允許使用'itertools.permutation'? –
這還不夠。你只能用'itertools.permutation'來做。我已經查過了。它更難的問題。 – Tal