我尝试用python编码排列。我正在寻找有关如何使用python 3.7中的Leibniz公式对行列式进行编码的建议
答案 0 :(得分:0)
如果您愿意使用numpy,则可以使用numpy.linalg.det()
我建议不要使用莱布尼兹的公式。这不是很有效。 如果需要的话,可以使用我从this question获取的代码:
react-dom.development.js
其中嵌套函数的定义如下:
def determinant_leibnitz(self):
assert self.dim()[0] == self.dim()[1] # O(1)
dim = self.dim()[0] # O(1)
det,mul = 0,1 # O(1)
for perm in permutations([num for num in range(dim)]):
for i in range(dim):
mul *= self[i,perm[i]] # O(1)
det += perm_parity(perm)*mul # O(n) ?
mul = 1 # O(1)
return det