程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> CC150:將一個矩陣旋轉90度

CC150:將一個矩陣旋轉90度

編輯:C++入門知識

CC150:將一個矩陣旋轉90度


一張圖像表示成n X n的矩陣,寫一個函數把圖像旋轉90度。不開辟額外的存儲空間

我們假設要將圖像逆時針旋轉90度。原圖如下所示:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16


逆時針旋轉90度後的圖應該是:


4 8 12 16
3 7 11 15
2 6 10 14
1 5 9 13
我們要如何原地進行操作以達到上面的效果呢?可以分兩步 第一步交換主對角線兩側的對稱元素,
第二步交換第i行和第n-1-i行,即得到結果。 看圖示:


原圖: 第一步操作後: 第二步操作後:
1 2 3 4 1 5 9 13 4 8 12 16
5 6 7 8 2 6 10 14 3 7 11 15
9 10 11 12 3 7 11 15 2 6 10 14

13 14 15 16 4 8 12 16 1 5 9 13


#include 
using namespace std;

void swap(int &x,int &y) {
	int k = x;
	x = y;
	y = k;
}
void Transpote(int array[][4],int n) {
	for(int i=0;i


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved