Thursday, January 20, 2011

Finding transpose of mXm matrix using JAVA

public class MultiArray {
       public static void main(String[] args) {
             // Declare and construct the M X M matrix.
             int[][] mXmArray = { { 16, 7, 12, 8 }, { 9, 20, 18, 2 },{ 14, 11, 5, 1 }, { 8, 5, 10, 0 } };
            
             for (int i = 0; i < mXmArray.length; ++i) {
                          int[] verify = mXmArray[i];
                          if (verify.length != mXmArray.length) {
                                throw new IllegalArgumentException("The matrix suppliing shuld be a square matrix");
                         }
             }
             // Interchanging non diagonal array elements.
             for (int i = 0; i < mXmArray.length; i++) {
                   for (int j = 0; j < mXmArray[i].length; j++) {
                        if (j != i && j > i) {
                               mXmArray[i][j] = mXmArray[i][j] + mXmArray[j][i];
                               mXmArray[j][i] = mXmArray[i][j] - mXmArray[j][i];
                               mXmArray[i][j] = mXmArray[i][j] - mXmArray[j][i];
                       }
                  }
           }
          // Priniting back the changed elements.
         for (int i = 0; i < mXmArray.length; i++) {
               for (int j = 0; j < mXmArray[i].length; j++) {
                      System.out.println(i + " ::: " + j + " ::: " + mXmArray[i][j]);
               }
        }
   }

}

No comments: