高斯消去法的相關拓展
听说高斯18岁就发现了最小二乘法...
高斯消去法本身很自然而容易理解(就是简单)
虽然百度百科原话"其算法十分复杂"
算法本身没有什么特别的地方,但是一些细节是值得注意的.
细节一
高斯消去法\(\neq\)高斯若尔当消元法gauss-jordan()
其实后者与前者并没有什么实质性的差别,只不过
這算法產生出來的矩陣是一個簡化行梯陣式,而不是高斯消元法中的行梯陣式。相比起高斯消元法,此算法的效率比較低,卻可把方程組的解用矩陣一次過表示出來。
引自维基百科
对于"上古时代"的一道搜索题虫食算,有一种非常漂亮的高斯消去法的解法.
这种解法的优化版本就用到了高斯若尔当消元法.
参见[http://blog.csdn.net/outer_form/article/details/50611820]
可知维基的这句话是有偏颇的.因为\(gauss-jordan()\)的确在某些情况下很有用处.
这些情况就是指增广矩阵的右端常数列不固定时(需要进行很多次迭代)
高斯若尔当可以算出可逆矩阵的逆矩阵,以及矩阵的秩.
细节二
如果读者仔细阅读了细节一中的链接给出的文章,肯定已经意识到这一点了.
增广矩阵的右端常数列并不仅仅只是一列.
(严格来说,"增广矩阵"的右端常数列变成了右端常数矩阵的时候,就不能交"增广矩阵"了)