Clockwise print matrix, clockwise Matrix
Public class PrintMatrix {
Public static void main (String [] args ){
Int [] [] matrix = {0, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15 }};
ArrayList <Integer> list = printMatrix (matrix );
For (Integer I: list ){
System. out. println (I );
}
}
Public static ArrayList <Integer> printMatrix (int [] [] matrix ){
ArrayList <Integer> list = new ArrayList <Integer> ();
Int I = 0;
Int j = 0;
Int M = matrix. length;
Int N = matrix [0]. length;
Int [] [] temp = new int [M] [N];
While (! IsFinsh (temp )){
For (; j <matrix [0]. length & temp [I] [j] = 0; ++ j ){
List. add (matrix [I] [j]);
Temp [I] [j] = 1;
}
-- J;
++ I;
For (; I <matrix. length & temp [I] [j] = 0; ++ I ){
List. add (matrix [I] [j]);
Temp [I] [j] = 1;
}
-- I;
-- J;
For (; j> = 0 & temp [I] [j] = 0; -- j ){
List. add (matrix [I] [j]);
Temp [I] [j] = 1;
}
++ J;
-- I;
For (; I> = 1 & temp [I] [j] = 0; -- I ){
List. add (matrix [I] [j]);
Temp [I] [j] = 1;
}
++ I;
++ J;
}
Return list;
}
Public static boolean isFinsh (int temp [] []) {
Int M = temp. length;
Int N = temp [0]. length;
For (int k = 0; k <M; k ++ ){
For (int l = 0; l <N; l ++ ){
If (temp [k] [l] = 0) return false;
}
}
Return true;
}
}