(RPA学习)【算法题】矩阵行列式

请写出函数,接收一个 N 行 N 列的方阵并返回这个矩阵的行列式.

如何计算一个矩阵的行列式呢?让我们从最简单的情况开始:
一个 1 x 1 的矩阵 |a| 的行列式等于它自己 a.
一个 2 x 2 的矩阵 [[a, b], [c, d]] 或者

|a b|
|c d|
行列式为ad - bc.

对于一个 n x n 大小的矩阵,其行列式的计算方式为将问题简化成计算 (n-1) x (n-1) 大小的矩阵的行列式.

对于 3 x 3 的情况, [[a, b, c], [d, e, f], [g, h, i]] 或者

|a b c|
|d e f|
|g h i|
行列式计算方式为: a * det(a_minor) - b * det(b_minor) + c * det(c_minor)
其中 det(a_minor) 的意思是划去 a 所在的行和列的所有元素后剩下来的部分组成的矩阵的行列式:

|- - -|
|- e f|
|- h i|
较大矩阵的行列式的计算方法也类似,例如,如果 M 是一个 4 x 4 的矩阵且第一行为 [a, b, c, d],那么:

det(M) = a * det(a_minor) - b * det(b_minor) + c * det(c_minor) - d * det(d_minor)

下面给出函数的开头部分:

def determinant(matrix):
#your code here
上期答案:

def anagrams(word, words):
return [i for i in words if sorted(word) == sorted(i)]

猜你喜欢

转载自blog.csdn.net/weixin_44447687/article/details/88947693
今日推荐