1. 程式人生 > >java實現陣列的轉置

java實現陣列的轉置

分析:所謂轉置就是把行變位列,把列變為行。

我們就可以用兩個for迴圈遍歷陣列,然後交換array[i][j]與array[j][i]

注意,遍歷陣列時不可以全部遍歷,這樣會使行和列的資料交換兩次,程式碼如下

 public void transpose()
{
 int  a[][]={{1,2,3},{4,5,6},{7,8,9}};
 System.out.println("轉置前:");
 for(int i=0; i<=2;i++)
 { for(int j=0;j<=2;j++ )
  { System.out.print(a[i][j]+"("+i+j+")\t");}
System.out.println();
 }
 //轉置
 for(int i=0; i<=2;i++)
 { for(int j=0;j<=i;j++ )//注意只能遍歷一半,所以j<=i如果全部遍歷,則資料交換了兩次,相當於沒有置換
 {
int temp;
temp=a[i][j];
a[i][j]=a[j][i];
a[j][i]=temp;
 }
 }
 System.out.println("轉置後");
 for(int i=0; i<=2;i++)
 { for(int j=0;j<=2;j++ )
  { System.out.print(a[i][j]+"("+i+j+")\t");}
System.out.println();
 }
 }