以下动态数组包含非对称n * n矩阵(n <= 100):
int **matrix;
matrix = new int*[n];
for (int i = 0; i < n; i++)
matrix[i] = new int[n];
有一种非常简单的方法来反转它吗?理想情况下,我只使用STL中的某些内容或下载单个头文件。
答案 0 :(得分:9)
使用Eigen。
http://eigen.tuxfamily.org/index.php?title=Main_Page
您可以将数组映射到Eigen矩阵,然后执行有效的矩阵求逆。
您只能包含它。
我补充说,通常如果你必须执行线性系统求解的反演,最好使用基于你可以利用的矩阵属性的矩阵分解。
答案 1 :(得分:3)
不是非常简单但有效:Numerical Recipes in c第48页,使用LU分解。