矩陣的旋轉

2021-09-07 06:57:36 字數 1252 閱讀 2496

一,給定乙個矩陣,用二維陣列表示,不一定是方陣(n*n),求矩陣的轉置(向右),和向左轉置。比如:

1 2 3

4 5 6

7 8 9

向右轉置:

1 4 7

2 5 8

3 6 9

再比如:

1 2 3

4 5 6

向 左轉置

3 62 5

1 4二,實現思路

假設原來的矩陣是m*n,轉置後變成了 n*m。設原矩陣是arr[m][n],建立乙個新的矩陣 rev[n][m]

對於向右轉置而言,就是線性代數裡面的求at,對於arr[m][n]裡面的每個元素arr[i][j],將之賦值給 rev[j][i] 即可。

對於向左轉置,對於arr[m][n]裡面的每個元素arr[i][j],將之賦值給 rev[n-j-1][i] 即可。

三,完整**

public

class

test,,};

int arr2 = ,};

reverseright(arr1);

system.out.println("---------");

reverseright(arr2);

system.out.println("***********");

reverseleft(arr1);

system.out.println("-------------");

reverseleft(arr2);

}public

static

void reverseright(int

arr)

stringbuilder sb = new

stringbuilder();

//列印旋轉後的矩陣--有col行和 row 列

for(int i = 0; i < col; i++)

sb.deletecharat(sb.length()-1);

} system.out.println(sb.tostring());

}public

static

void reverseleft(int

arr)

}//列印旋轉後的矩陣--有col行和 row 列

for(int i = 0; i < col; i++)

system.out.println();}}

}

矩陣的旋轉

time limit 1000ms memory limit 65536k 有疑問?點這裡 把矩陣a的行換成相應的列,得到的新矩陣稱為a的轉置矩陣。大家在 程式設計基礎 的上機實驗題目和平時的練習中肯定做過一些關於矩陣的題,其中最常見的就是矩陣的轉置了。so,今天我們就不考矩陣的轉置了,我們要考察一...

矩陣運算 矩陣旋轉

以下不加證明地給出在世界座標系中,以座標點 0,0,0 為原點的旋轉矩陣 包含平移的線性變換稱作仿射變換,3d中的仿射變換不能用 3 x 3 矩陣表達,必須使用4 x 4矩陣 1.繞x座標軸旋轉 1 0 0 0 0 cos a sin a 0 0 sin a cos a 0 0 0 0 1 2.繞y...

矩陣的旋轉問題

輸入乙個4 4的矩陣,進行逆時針旋轉90度後輸出,要求原始陣列的資料隨機輸入,新資料以4行4列的方式輸出 可以通過乙個二維陣列實現輸入,然後轉換 i 行為 j 列,第乙個新行數的下標為0即可b 3 j i a i j 如下 示例 include intmain printf array b n fo...