解题思路:
1、考虑到边界的问题,分为在首尾各增加1行,1列,全部赋值0,简化后续的操作处理。
2、二维数组的malloc动态内存分配方法,先分配行,再循环分配列。这块儿需要进一步学习和巩固。
3、接下来就是对8个邻居求和,之前题目的规则,进行判断和1/0翻转。
注意:所有的计算都是基于原始值,新翻转的不影响。
void gameOfLife(int** board, int boardSize, int* boardColSize){
//首尾巴增加两行和两列,并且补0.
int **a = (int **) malloc ((boardSize + 2) * sizeof(int *));
for (int i = 0; i < (boardSize + 2); i++){
a[i] = (int *) malloc (