矩阵旋转问题的求解
?????? 今天剛剛練習(xí)做到一個(gè)關(guān)于矩陣轉(zhuǎn)置的算法問題,主要用到順時(shí)針與逆時(shí)針旋轉(zhuǎn),時(shí)間匆忙,就隨便記錄下思路吧,等有時(shí)間再將詳細(xì)的求解過程貼出來,當(dāng)然原算法的復(fù)雜度要稍微高些,不過只要掌握了矩陣的旋轉(zhuǎn),答案也就自然而然地閃現(xiàn)呢!好了,不啰嗦,請看代碼吧!
01: int _tmain(int argc, _TCHAR* argv[]) 02: { 03: int a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},b[4][4],c[4][4],i,j; 04: for(i=0;i<4;i++) 05: { 06: for(j=0;j<4;j++) 07: { 08: printf("%d\t",a[i][j]); 09: } 10: printf("\n"); 11: } 12: for(i=0;i<4;i++) 13: { 14: for(j=0;j<4;j++) 15: { 16: b[i][j]=a[3-j][i];//順時(shí)針旋轉(zhuǎn) 17: } 18: } 19: for(i=0;i<4;i++) 20: { 21: for(j=0;j<4;j++) 22: { 23: c[i][j]=a[j][3-i];//逆時(shí)針旋轉(zhuǎn) 24: } 25: } 26: printf("順時(shí)針旋轉(zhuǎn)變換后 :\n"); 27: for(i=0;i<4;i++) 28: { 29: for(j=0;j<4;j++) 30: { 31: printf("%d\t",b[i][j]); 32: } 33: printf("\n"); 34: } 35: printf("逆時(shí)針旋轉(zhuǎn)變換后:\n"); 36: for(i=0;i<4;i++) 37: { 38: for(j=0;j<4;j++) 39: { 40: printf("%d\t",c[i][j]); 41: } 42: printf("\n"); 43: } 44: getchar(); 45: return 0; 46: }??????? 很簡單吧,好好琢磨下變換的規(guī)律吧,假如是旋轉(zhuǎn)180,270呢???轉(zhuǎn)載于:https://www.cnblogs.com/JackyTecblog/archive/2011/03/15/1985074.html
總結(jié)
- 上一篇: Log4net 配置使用总结(一)
- 下一篇: 带新人