day20(11.21)——leetcode面试经典150

289. 生命游戏

289. 生命游戏

题目:

题解:

java 复制代码
class Solution {
    public void gameOfLife(int[][] board) {
        // 计算长和宽
        int x_len = board.length;
        int y_len = board[0].length;
        //标记要变化的位置
        boolean[][] flag=new boolean[x_len][y_len]; 
        for(int i=0;i<x_len;i++) {
            for(int j=0;j<y_len;j++) {
                //周围活细胞的数量
                int sum=0;
                for(int x=-1;x<=1;x++) {
                    for(int y=-1;y<=1;y++) {
                        if(x==0&&y==0) {
                            continue;
                        }
                        int xx=i+x;
                        int yy=j+y;
                        //如果没有超出边界,那么进行统计当前活细胞的数量
                        if(xx<x_len&&yy<y_len&&xx>=0&&yy>=0) {
                            sum+=board[xx][yy];
                        }
                    }
                }
                if(board[i][j]==1) {
                    if(sum<2) {
                        flag[i][j]=true;
                    }
                    else if(sum>3) {
                        flag[i][j]=true;
                    }
                }
                else {
                    if(sum==3) {
                        flag[i][j]=true;;
                    }
                }
            }
        }
        for(int i=0;i<x_len;i++) {
            for(int j=0;j<y_len;j++) {
                if(flag[i][j]==true) {
                    board[i][j]=1-board[i][j];
                }
            }
        }
    }
}
相关推荐
boooooooom3 小时前
Pinia必学4大核心API:$patch/$reset/$subscribe/$onAction,用法封神!
javascript·vue.js·面试
试着4 小时前
【huawei】机考整理
学习·华为·面试·机试
石去皿4 小时前
【嵌入式就业6】计算机组成原理与操作系统核心机制:夯实底层基础
c++·面试·嵌入式
闻哥4 小时前
Kafka高吞吐量核心揭秘:四大技术架构深度解析
java·jvm·面试·kafka·rabbitmq·springboot
2501_901147835 小时前
面试必看:优势洗牌
笔记·学习·算法·面试·职场和发展
李日灐5 小时前
C++进阶必备:红黑树从 0 到 1: 手撕底层,带你搞懂平衡二叉树的平衡逻辑与黑高检验
开发语言·数据结构·c++·后端·面试·红黑树·自平衡二叉搜索树
Bella的成长园地6 小时前
为什么c++中的条件变量的 wait() 函数需要配合while 循环或谓词?
c++·面试
小迷糊的学习记录19 小时前
0.1 + 0.2 不等于 0.3
前端·javascript·面试
程序员敲代码吗19 小时前
面试中sessionStorage问题引发深度探讨
面试·职场和发展
源代码•宸20 小时前
大厂技术岗面试之谈薪资
经验分享·后端·面试·职场和发展·golang·大厂·职级水平的薪资