高斯消元法求逆矩阵C代码

       设A为一个n*n矩阵,其逆矩阵可被两个分块矩阵表示出来,将一个n*n单位矩阵放在A的右边,形成一个n*2n的分块矩阵B=[A,I]。经过高斯消去法的计算程序后,矩阵B的左边会变成一个单位矩阵I,而A的逆矩阵会出现在B的右边。

       网上有很多关于高斯消元法求逆矩阵的C语言源代码,大同小异,本文的源代码来源于网络,略微做了一些改动,并添加了测试高斯消元法运行时间的代码,可精确到微秒。

        
需要特别注意的是源代码中数组is与js的定义方式,定义方式一:

        
若按此方式定义,那么在函数matrixInversion执行完成后,需要相应的执行free(is)与free(js),其运行结果为:

     is与js的定义方式二:

      方式二的运行结果为:

        两种定义方式导致了最终的运算结果大相径庭,大家各取所需吧。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Fork me on GitHub