📖

プログラミング自主学習 DAY54 CS/多次元配列回転

2023/07/20に公開

CS

プログラムの演算過程


https://m.blog.naver.com/sjc02183/221998493348

0. I/O

キーボード、マウスなどで、データーを入力する。

1.HDD/ODD(補助記憶装置)

データを読み取り、RAM(Main Memory)に載せ、この作業をloadingと呼ぶ。
機械でデーターを処理するため、処理速度が遅く、ボトルネック現象が起こりやすい。
現在はボトルネック現象を改善したSSDで、データを電気で処理する。

2. RAM(主記憶装置)

Javaを勉強する際に、勉強する領域。stack,heap,dataなどが存在する。

3. CPU Cache(主記憶装置)

RAMとCPUの間にあるメモリ。RAMとCPUのボトルネック現象を解消するため、存在する。
L3(level 3)はCPUの外部、L2(level 2),L1(level 1)はCPU内部にある。

4. CPU Register(主記憶装置)

CPU内部にある最上位メモリ。処理速度が一番早い。
Registerにあるデーターが、CPU内部のALU(Arithmetic and logical Unit), CU(Control Unit)に入る。病院の待機列みたいな感じだ。

二次元配列回転

90度回転

Rotate90

int [][] score = {
	           {80,80,80},	    
		   {90,90,90},	
		   {75,75,75},
		   {95,95,95},
		   {60,60,60}
		}; 
		

int row = score.length;  //5
int column = score[0].length;  //3	

int[][] rotate = new int[column][row]; 

for(int i=0; i<rotate.length; i++)  {                   
   for(int j=0;j<rotate[i].length; j++){                  
	rotate[i][j]= score[row-1-j][i];                             
	}
  }	

60 95 75 90 80
60 95 75 90 80
60 95 75 90 80

180度回転

Rotate180

int [][] score = {
	           {80,80,80},	    
		   {90,90,90},	
		   {75,75,75},
		   {95,95,95},
		   {60,60,60}
		}; 
		

int row = score.length;  //5
int column = score[0].length;  //3	

int[][] rotate = new int[row][column]; 
		
for(int i=0; i<rotate2.length; i++)  {                   
    for(int j=0;j<rotate2[i].length; j++){                  
	rotate2[i][j]= score[row-1-i][column-j];                             
	}
   }	
{60, 60, 60}
{95, 95, 95}
{75, 75, 75}
{90, 90, 90}
{80, 80, 80}

90度回転

Rotate270

int [][] score = {
	           {80,80,80},	    
		   {90,90,90},	
		   {75,75,75},
		   {95,95,95},
		   {60,60,60}
		}; 
	   

int row = score.length;  //5
int column = score[0].length;  //3	


int[][] rotate3 = new int[column][row];
		
for(int i=0; i<rotate3.length; i++)  {                   
    for(int j=0;j<rotate3[i].length; j++){                  
	rotate3[i][j]= score[row-1-j][i];                             
	}
   }	
60 60 60 60 60 
95 95 95 95 95 
75 75 75 75 75    

Discussion