print an 2D array in spiral order.
Anonymous
public static void spiralGrid(int gridSize) { int startingAt = 1; int[][] countArray = new int[gridSize][gridSize]; int min = 0; int max = gridSize-1; int count = 0; do { for (int x=min; x = min; z-- ) { countArray[max][z] = count + startingAt; count++; } for (int w=max-1; min = min + 1; w--) { countArray[w][min] = count + startingAt; count ++; } if (++ min > --max) break; // Should not happen } while (count < (gridSize * gridSize)); System.out.println(); for (int i=0; i < gridSize; i++ ) { for (int j=0; j < gridSize; j++ ) { System.out.printf("%5d",countArray[i][j]); } System.out.println(); } }
Check out your Company Bowl for anonymous work chats.