擅长:python、mysql、java
<p>不使用递归的尝试,其中N是矩阵宽度:</p>
<pre><code>import itertools
def column(index, length, size):
res = [0]* (length-1)
res.insert(index,1)
return res + [0]*(size - len(res))
N = 4
l = []
for i in range(1, N+1):
l1 = []
for j in range(0,i):
l1.append(column(j,i,N))
l.append(l1)
result = [list(x) for x in [zip(*r) for r in itertools.product(*l)]]
</code></pre>
<p>对于每一列,它创建一个包含所有可能的零序列和一个符合条件的序列的列表。然后将它们合并,得到按列列出的所有矩阵,从而计算每个矩阵的变换,从而得到结果。希望有帮助。你知道吗</p>