又是學習新知識的一天,以下為Java版本部分關鍵代碼
int[] neighbors = {0, 1, -1};int rows = board.length;int cols = board[0].length;int[][] copyBoard = new int[rows][cols];for (int row = 0; row < rows; row++) {for (int col = 0; col < cols; col++) {int liveNeighbors = 0;for (int i = 0; i < 3; i++) {for (int j = 0; j < 3; j++) {if (!(neighbors[i] == 0 && neighbors[j] == 0)) {//計算行和列 2,2 2,3 2 1 1,1,1,2,1,3int r = (row + neighbors[i]);int c = (col + neighbors[j]);if ((r < rows && r >= 0) && (c < cols && c >= 0) && (copyBoard[r][c] == 1)) {liveNeighbors++;}}}}}}