冪等矩陣是具有相同行數和列數的方陣,當我們將矩陣與其自身相乘時,結果將等於同一個矩陣。我們將得到一個矩陣,我們必須確定它是否是冪等矩陣。
數學上−
如果給定矩陣 ix M,則 M 是冪等矩陣,應遵循以下性質 -
M*M = M
#一個矩陣與另一個矩陣相乘會產生另一個矩陣,如果給定矩陣是 N*N 的方陣,則所得矩陣也將具有相同的維度 (N*N)。
兩個矩陣A和B相乘的結果矩陣的每個索引(i,j)是矩陣A的第j列與矩陣B的第i列的乘法總和。
Mat = [ [1, 0], [0, 1]]
Yes, the given matrix is an Idempotent matrix.
For the cell (0,0): We have to multiply [1,0] with [1,0] => 1* 1 + 0 * 0 = 1. For the cell (0,1): We have to multiply [0,1] with [1,0] => 0* 1 + 0 * 1 = 0. For the cell (1,0): We have to multiply [1,0] with [0,1] => 1* 0 + 0 * 1 = 0. For the cell (1,1): We have to multiply [0,1] with [0,1] => 0* 0 + 1 * 1 = 1. So, the final matrix we will get is: [ [1, 0], [0, 1]]
我們已經了解了求兩個矩陣相乘的範例和方法,現在讓我們看看實作程式碼以求給定矩陣是否為冪等矩陣的步驟。
首先,我們將建立一個函數,該函數將採用單一參數,該參數將作為要尋找的矩陣,無論它是否是冪等矩陣。
我們將取得矩陣的長度,並使用它通過 for 迴圈遍歷矩陣的每個單元格。
在每個索引或單元格中,我們將使用上述步驟來取得答案矩陣目前單元格中存在的值。
我們將使用for迴圈遍歷目前列和行並得到它們的乘法和。
如果目前總和等於目前索引值,則我們將移至下一個值,否則將傳回 false。
根據回傳值,列印目前矩陣是否冪等的語句。
// function to check if the current matrix is an Idempotent matrix or not function check(mat){ // getting the size of the given matrix. var n = mat.length; // traversing over the given matrix for(var i = 0;i < n; i++){ for(var j = 0; j<n; j++){ // for the current cell calculating the value present in the resultant matrix // variable to store the current cell value var cur = 0; for(var k = 0; k<n; k++){ cur += mat[k][j]*mat[i][k]; } // if the current value is not equal to value we got for this cell then return false if(cur != mat[i][j]){ return false; } } } // returing true as all the values matched return true; } // defining the matrix var mat = [[2, -2, -4], [-1, 3, 4 ], [1, -2, -3]] console.log("The given matrix is: ") console.log(mat); // calling the function to check if the current matrix is idempotent matrix or not if(check(mat)){ console.log("The given matrix is idempotent matrix") } else { console.log("The given matrix is not idempotent matrix") }
上述程式碼的時間複雜度為 O(N^3),其中 N 是給定矩陣的行數。對於每個單元格,我們必須將當前列與當前行相乘以產生因子或 N,總共有 N^N 個單元格。
上述程式碼的空間複雜度為 O(1),因為我們沒有使用任何額外的空間來儲存矩陣。
在本教程中,我們實作了一個 JavaScript 程式來檢查給定矩陣是否是冪等矩陣。冪等矩陣是具有相同行數和列數的方陣,當我們將矩陣與其自身相乘時,結果將等於同一個矩陣。我們以 O(N^3) 時間複雜度實現程式碼,並以 O(1) 空間複雜度工作。
以上是JavaScript 程式檢查冪等矩陣的詳細內容。更多資訊請關注PHP中文網其他相關文章!