这个是转置,不知道是不是“旋转矩阵”import java.util.*;public class Cute
{
public Vector trans(Vector old)
{
Vector newvec = new Vector();
Vector[] org = new Vector[old.size()];
for(int i = 0 ; i < old.size() ; i++)
{
org[i] = (Vector) old.elementAt(i);
}
Vector[] newmem = new Vector[org[0].size()]; 
for(int i = 0 ; i < org[0].size() ; i++)
{
newmem[i] = new Vector();
for(int j = 0 ; j < org.length ; j++)
{
newmem[i].add(org[j].elementAt(i).toString());
}
}
for(int i = 0 ; i < org[0].size() ; i++)
{
newvec.addElement(newmem[i]);
}
return newvec;
}
  public static void main(String[] args)
  {
   Cute cute = new Cute();
  
   //build 6*4
   Vector vec = new Vector();
   for(int i = 0 ; i < 6 ; i++)
   {
   Vector temp = new Vector();
   for(int j = 0 ; j <4 ; j++)
   {
      temp.addElement(String.valueOf(4*i+j));
      System.out.print((4*i+j)+"   ");
   }
   vec.addElement(temp);
   System.out.println();
        }
        Vector vecnew = cute.trans(vec);
        for(int i = 0 ; i < 4 ; i ++)
        {
         Vector temp = (Vector)vecnew.elementAt(i);
         for(int j = 0 ; j < 6 ; j++)
         {
         System.out.print(temp.elementAt(j)+"   ");
         }
         System.out.println();
        }
       
  }
}

解决方案 »

  1.   

    public class Test {
    public static void main(String[] args) {
    int[][] source = {{8,7},{45,65},{12,45}};
    int[][] target = 变(source,3,2);
    for(int i=0;i<2;i++){
    for(int j=0;j<3;j++){
    System.out.print(target[i][j]+"\t");
    }
    System.out.print('\n');
    }
    }
    static int[][] 变 (int[][] array,int rows,int cols){
    int[][] result = new int[cols][rows];
    for(int i=0;i<cols;i++){
    for(int j=0;j<rows;j++){
    result[i][j]=array[j][i];
    }
    }
    return result;
    }
    }原矩阵:
    8     7
    45    65
    12    45
    输出:
    8       45      12
    7       65      45
      

  2.   

    应该是这个吧~
    500分怎么给?
    import java.io.*;class ScrewMatrix   
    {
    public static void main(String[] args)  
    {
    int width=10;   int height=9;  //初始化矩阵的行和列
    int r=width*height+1;
                      int w=width;   int h=height-1;
    int n=0;       int g=0;
    int p=h-1;     int m=width;
    int count=1;   int f=0;
    int []arr=new int[r-1]; while(true)
    {
    for(int i=0;(i<w)&&(count!=r);++i,++count)
        arr[width*n+i+(width-m)-f]=count;

    for(int i=0;(i<h)&&(count!=r);++i,++count)
    arr[width*(height-p+i)-g-1]=count;
     
    for(int i=0;(i<(w-1))&&(count!=r);++i,++count)
        arr[width*(h+g+1)-g-1-i-1]=count;

    for(int i=0;(i<(h-1))&&(count!=r);++i,++count)
        arr[width*(p-i)+g+1-1]=count;

    if(count==r)
    break; --p;   m-=2;   ++n;  ++g;   h-=2;   w-=2;   ++f;
    } for(int i=0;i<arr.length;++i)
    {
    if(i%(width)==0)
    System.out.println();
    System.out.print(" "+arr[i]+'\t');
    }
      
    System.out.println();
    }
    }
      

  3.   

    这哪里是旋转矩阵.这是矩阵.
    MSN:[email protected]
      

  4.   

    A B C D H I J
    A B C E G H J
    A B C F H I J
    A B D E F H J
    A B D F G H J
    A B E G H I J
    A C E F G H I
    B C D E F G I
    C D E F G I J
    美国人Gail Howard 发明的.
      

  5.   

    在Google上找一下.多谢大家帮忙
      

  6.   

    http://www.sxfc.gov.cn/news/ShowArticle.asp?ArticleID=960http://www.cpscw.com/cai3/index7.asphttp://flyarrow.3322.net/lotpage/page031.htm