当前位置: 首页 > news >正文

wordpress音乐站主题微信推广加人

wordpress音乐站主题,微信推广加人,万网免费域名,wordpress 加内链文章目录 题目 一、思路: 二、代码 总结 题目 leetcodeT289 https://leetcode.cn/problems/game-of-life/description/ 一、思路: 这题思路很简单,对每个位置按照题目所给规则进行遍历,判断周围网格的活细胞数即可。但是题目要求…

文章目录

题目

一、思路:

二、代码

总结


题目

leetcodeT289 https://leetcode.cn/problems/game-of-life/description/


一、思路:

这题思路很简单,对每个位置按照题目所给规则进行遍历,判断周围网格的活细胞数即可。但是题目要求只能在原来的矩阵上进行操作,不能新建一个矩阵数组,因此我们只能更新原有数组,但是注意到在循环程序中我们只能一个一个网格更新状态,这样一个网格状态如果在原位置更新的话,就会影响到周围还没有更新状态的网格,会导致周围网格的状态错误。因此,我们需要记录网格的更新前的状态和更新后的状态,由于网格只有0、1两个状态,只用到1位,而矩阵是int型,我们可以用一位来记录更新前的状态,用另一位来记录更新后的状态。

二、代码

class Solution {public void gameOfLife(int[][] board) {int n = board.length;int m = board[0].length;for(int i = 0; i < n; i++) {for(int j = 0; j < m; j++) {int cnt = 0;for(int x = - 1; x <= 1; x++) {for(int y = -1; y <= 1; y++) {// 枚举四面八方八个方向 防止越界if(i + x >= 0 && i + x < n && j + y >= 0 && j + y < m && !(x == 0 && y == 0)) {// 用当前状态存储八个方向的1的个数cnt += board[i + x][j + y] & 1; }}}// 更新状态if(board[i][j] == 1) {if(cnt < 2 || cnt > 3) board[i][j] = 1; // 01else board[i][j] = 3; // 11}else {if(cnt == 3) board[i][j] = 2; // 10else board[i][j] = 0; // 0}}}// 更新状态 右移1位即可for(int i = 0; i < n; i++)for(int j = 0; j < m; j++){board[i][j] = board[i][j] >> 1;}}
}


总结

通过二进制位运算的思想可以存储两个状态,用来避免更新对下面操作的影响。

http://www.wangmingla.cn/news/121094.html

相关文章:

  • 网站之间如何做视频交换营销型网站建设优化建站
  • 建行网站首页登录宁波seo搜索引擎优化公司
  • 网站建设北京seo网站设计
  • 山东网站建设哪家便宜东莞seo网络推广专
  • 深圳 网站设计师 招聘seo是搜索引擎吗
  • 腾讯云搭建ip教程巩义网站优化公司
  • dw制作旅游网站教程网站注册要多少钱
  • 西安哪些做网站的公司好seo服务公司怎么收费
  • 做音乐网站是不是侵权温州seo
  • 龙华品牌网站建设品牌策划公司
  • 南通网站建设价格成都seo公司排名
  • 网站内容管理口碑营销5t
  • 武汉论坛网seo怎么搞
  • 网站 优化人员优化方案怎么写
  • 做服装公司需要什么网站如何做电商新手入门
  • 海南省城乡住房建设厅网站洛阳市网站建设
  • 装修公司网站建设解决方案竞价广告代运营
  • 河南免费网站建设公司游戏优化大师下载安装
  • 优网营销网站建设建设企业网站多少钱
  • 合浦建设局网站兰州网站seo服务
  • 换服务器wordpress升级seo外包公司兴田德润官方地址
  • 做网站开发的需求文档google seo是什么
  • 可以在自己的电脑上做网站吗深圳网站建设开发公司
  • 学校网站建设的目的及意义百度优化怎么做
  • 西安幼儿园网站制作如何做推广宣传
  • 营销网站售后调查系统sem和seo的关系
  • 化妆品网站下载营销网站建设培训学校
  • ps如何做psd模板下载网站济南百度推广开户
  • 十大禁止免费ppt网站房产网站建设
  • 网站域名费一年交多少北京疫情最新数据