Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 104fe7c

Browse files
author
Ram swaroop
committed
code done + unit tested
1 parent 88d25bb commit 104fe7c

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed

src/me/ramswaroop/arrays/MatrixInSpiral.java

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
public class MatrixInSpiral {
1313

1414
/**
15-
*
15+
* Prints a 2D array {@param a} in spiral form (clockwise).
16+
*
1617
* @param a
1718
*/
1819
public static void printMatrixInSpiral(int[][] a) {
@@ -25,26 +26,34 @@ public static void printMatrixInSpiral(int[][] a) {
2526
*/
2627
// prints the top row
2728
for (int i = x, j = x; i < r && j < c; j++) {
28-
out.print(a[i][j]);
29+
out.print(a[i][j] + " ");
2930
}
3031
// prints the right most column
3132
for (int i = x + 1, j = c - 1; i < r; i++) {
32-
out.print(a[i][j]);
33+
out.print(a[i][j] + " ");
3334
}
3435
// prints the bottom row
35-
for (int i = r - 1, j = c - 2; j >= x; j--) {
36-
out.print(a[i][j]);
36+
for (int i = r - 1, j = c - 2; i > x && j >= x; j--) {
37+
out.print(a[i][j] + " ");
3738
}
3839
// prints the left most column
3940
for (int i = r - 2, j = x; i > x; i--) {
40-
out.print(a[i][j]);
41+
out.print(a[i][j] + " ");
4142
}
4243
}
4344
}
4445

4546
public static void main(String a[]) {
47+
printMatrixInSpiral(new int[][]{{1}, {2}});
48+
out.println();
49+
printMatrixInSpiral(new int[][]{{1, 2}, {3, 4}});
50+
out.println();
51+
printMatrixInSpiral(new int[][]{{1, 2, 3}, {4, 5, 6}});
52+
out.println();
4653
printMatrixInSpiral(new int[][]{{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}});
4754
out.println();
4855
printMatrixInSpiral(new int[][]{{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}});
56+
out.println();
57+
printMatrixInSpiral(new int[][]{{1, 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12}, {13, 14, 15, 16, 17, 18}});
4958
}
5059
}

0 commit comments

Comments
 (0)