首页 > 试题广场 >

使用拉普拉斯展开式的 4x4 矩阵的行列式

[编程题]使用拉普拉斯展开式的 4x4 矩阵的行列式
  • 热度指数:202 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
编写一个函数,使用拉普拉斯展开法计算 4x4 矩阵的行列式。
注意:矩阵的元素可以是整数或浮点数。

输入描述:
输入一个4x4 的矩阵。


输出描述:
输出矩阵的行列式。
示例1

输入

[[1, 2, 3, 4], [2, 4, 6, 8], [3, 6, 9, 12], [4, 8, 12, 16]]

输出

0

备注:
1.Python3对应的输入、输出已给出,您只用实现核心功能函数即可。
2.支持numpy、scipy、pandas、scikit-learn库。
def determinant_4x4(matrix) :
    n = len(matrix)
    if n == 2:
        return matrix[0][0] * matrix[1][1] - matrix[0][1] * matrix[1][0]
    else:
        sum_ = 0
        for i in range(n):
            part1 = matrix[0][i] * (-1) ** i
            tmp = [[] for _ in range(n - 1)]
            for s in range(1, n):
                for t in range(n):
                    if t != i:
                        tmp[s - 1].append(matrix[s][t])
            part2 = determinant_4x4(tmp)
            sum_ += part1 * part2
        return sum_

发表于 2025-10-22 20:25:36 回复(0)