僅供自己學習記錄。沒有處理主對角線有0得情況與沒有逆矩陣的情況,但也基本夠用了。
const
int row =4;
int res[row]
[row]
;void
gauss
(float mat[row]
[row]
)else}}
//2.化為行階梯形式
//特殊處理第一行
for(
int i =
1;i < row;i++)}
}//對角線元素歸1
for(
int i =
0;i < row;i++)}
}//3.化為單位矩陣形式
for(
int i = row -
1;i >=
1;i--)}
} cout <<
"res:<<<<<<<<<<<<<<<<<<<<<<<<<<"
<< endl;
/*for (int i = 0;i < row;i++)
cout << endl;
}*///4.完成並輸出
for(
int i =
0;i < row;i++
) cout << endl;
}}
測試資料:
1 0 0 1
0 1 0 3
0 0 1 2
0 0 0 1
2 1 1
3 2 1
2 1 2
高斯消元法求矩陣的逆
逆矩陣 設a是數域上的乙個n階方陣,若在相同數域上存在另乙個n階矩陣b,使得 ab ba e。則我們稱b是a的逆矩陣,而a則被稱為可逆矩陣。矩陣求逆一般有兩種方法,乙個是伴隨矩陣法,乙個是初等變換法,也就是高斯消元法。這裡主要講高斯消元法的程式設計方法。由條件ab ba以及矩陣乘法的定義可知,矩陣a...
矩陣求逆 高斯消元拓展
高斯消元 對於兩個矩陣a,b a,ba,b,如果a b e a times b e a b e 其中e ee 為單位矩陣,那麼我們稱b bb是a aa的逆矩陣,a aa為可逆矩陣。前置 單位矩陣 eee 單位矩陣的定義 乙個從左上角到右下角的對角線 主對角線 的元素全部為1 11,其餘元素全部為0 ...
Gauss Jordan消元法求矩陣的逆
最近資訊保安作業要寫hill密碼,涉及到求矩陣的逆。不想用乙個函式就用那些亂七八糟的庫,大概找了找又沒現成的,只能自己擼了。寫的時候才發現線代都忘光了qaq 1 gauss jordan elimination method to get inverse matrix 2 template doub...