评论区看到的,只能说官方题解__都不看。
从左往右、从上往下的顺序遍历一次board,完成3个条件的检验,这其中有个j/3 + (i/3)*3最关键,用来判断是否每个数是否存在box中,j/3 + (i/3)*3的解析如下:在3*9的矩阵中,每个数属于哪个box就只取决于纵坐标,纵坐标为0/1/2的都属于box[0],纵坐标为3/4/5的都属于box[1],纵坐标为6/7/8的都属于box[2].也就是j/3。而对于9x9的矩阵,我们光根据j/3得到0/1/2还是不够的,可能加上一个3的倍数,例如加0x3,表示本行的box,加1x3,表示在下一行的box,加2x3,表示在下两行的box,这里的0/1/2怎么来的?和j/3差不多同理,也就是i/3

class Solution {public boolean isValidSudoku(char[][] board) {// 存储每一行的每个数是否出现过,默认初始情况下,每个数都没出现过int [][]row  =new int[9][9];int [][]col  =new int[9][9];int [][]box  =new int[9][9];for (int i = 0; i < 9; i++) {for (int j = 0; j < 9; j++) {if (board[i][j]=='.'){continue;}// -0为了转数字,-1是为了出现9*9数组,不然就把上面数组的[9][9]->[9][10]int curNum = board[i][j]-'0' - 1;// 判断是否在行、列、box中出现if (row[i][curNum]==1){return false;}if (col[j][curNum]==1){return false;}if (box[j/3 + (i/3) * 3][curNum]==1){return false;}// 之前都没出现过,现在出现了,下次再遇见直接falserow[i][curNum]=1;col[j][curNum]=1;box[j/3 + (i/3) * 3][curNum]=1;}}return true;}
}

36.有效的数独,超简单做法,一看就懂相关推荐

  1. android手机投影电视软件,Type-C手机投屏电视/投影仪超简单,快看你的可以吗?...

    原标题:Type-C手机投屏电视/投影仪超简单,快看你的可以吗? 在智能手机普及之前,大家的娱乐主要还是看电视,或者用电脑上网.玩游戏,而现在大家最离不开的就是手机.但是教授也发现一个现象,很多机友对 ...

  2. 微信云服务器发长视频朋友圈,今天才知道,微信朋友圈还能发5分钟长视频,超简单,一看就会...

    原标题:今天才知道,微信朋友圈还能发5分钟长视频,超简单,一看就会 朋友圈里不仅可以晒照片 还能分享一些好玩的小视频 但通常来说 小视频最多只能拍15秒 有些长时间的视频就发不了了 今天,厦门银龄教您 ...

  3. 设计模式也可以这么简单,一看就懂

    Java面试笔试面经.Java技术每天学习一点 公众号Java面试 关注我不迷路 作者:javadoop 来源:https://javadoop.com/post/design-pattern 序 一 ...

  4. linux网络配置(超简单,一看就会)

    2022.11.19 文章目录 前言 一.linux网络? 二.使用步骤 1.查看本机ip 2.进入root用户 3.进入配置网络的目录 4.配置网络 5.重启网络服务 6.查看IP并测试网络 总结 ...

  5. gettext()方法输出空白_如何将文档内容输出为无水印图片?超简单的操作方法看这里...

    在实际的工作生活中,我们可能会遇到这样的情况:文档内容太多,想截图以图片的形式展现,但是文档超过一屏无法全部截取,将其保存为图片的形式,但使用WPS将文档直接输出为无水印图片需要开启WPS会员. 一连 ...

  6. win10+黑苹果 单硬盘 双系统 超简单安装 一看就会

    注意:此教程全机型通用 ,只需要替换相关的efi文件即可.安装黑苹果的教程已经很多了,本人学的皮毛只适合跟我配置差不多的笔记本电脑,比如神州系列啥的.如果本文出现任何问题请及时指正,谢谢. 电脑型号  ...

  7. 华为手机锁屏下拉怎么设置_华为手机怎么设置会滚动的锁屏文字?设置步骤超简单,一看就会...

    小米手机设置锁屏滚动文字是通过自定义运营商名称来实现的,但是华为手机并不能自定义运营商名称,大部分华为手机只能选择显示或不显示运营商名称.那么问题来了,华为手机要怎么操作才能让锁屏文字滚动起来呢?按照 ...

  8. Java的反射机制,内含超简单实例代码(搞懂反射,这一篇就够了)

    一 首先来说说反射机制的概念: 程序在运行时, 对于类来说,可以知道该类的任意属性和方法: 对于对象来说,可以调用该对象的任意方法和属性: 就以上这种动态获取信息的机制就称为Java的反射机制 彻底了 ...

  9. ipv6单播地址包括哪两种类型_超简单!一文搞懂IPv6地址

    为什么要使用IPv6地址 由于IPv4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展.IPv6地址长度为128位,是v4长度的4倍.现有标准IPv4只支持大概40亿(4×109)个网络地 ...

最新文章

  1. 清除Squid缓存的小工具
  2. 网友提问:关于CX_VSI_SYSTEM_ERROR异常,Fiori病毒扫描参数文件
  3. how SAP CRM settype structure names are determined
  4. 全栈测试:平衡单元测试和端到端测试
  5. 使用BusyBox制作根文件系统的操作步骤
  6. (9)css常用样式--盒子模型
  7. CodeForeces 842d Vitya and Strange Lesson ——(带lazy标记的01字典树)
  8. java苹果沙盒验证参数问题_php – iOS7 – 收据未在沙盒验证 – 错误21002(java.lang.IllegalArgumentException)...
  9. 会声会影2018,带你体验不一样的光影世界!
  10. 最大子序列和算法C语言,最大子序列和O(N)算法简单分析『神兽必读』
  11. 二十四、Java集合框架(一)
  12. SEO—搜索引擎优化初探
  13. 数字孪生管理系统,智慧校园建设规划方案
  14. 2014蓝桥杯C++A组——史丰收速算
  15. 电信无限流量卡无服务器,电信无限流量卡实测 牟足劲一天刷30GB
  16. MySQL Workbench建表时 PK NN UQ B UN ZF AI G的含义
  17. 搜狗浏览器屏蔽广告插件_搜狗浏览器屏蔽芒果TV视频广告:被判不正当竞争,赔了12万...
  18. 混音软件哪个好用?这几个软件不容错过
  19. docker学习5-docker安装tomcat环境和部署war包
  20. Windows内核开发调试环境配置详解

热门文章

  1. Launcher壁纸来源
  2. dubbo 中文官网
  3. 塔防游戏路点---编辑器脚本设计
  4. 深度学习mindspore --- win10系统cpu下安装mindspore
  5. java阿里面试官直接告诉你录取答案,你还在犹豫那就晚了
  6. 【Python从0到1】第三篇:基础语法(三)
  7. Git使用简介一(入门级)
  8. 机智是一项无价的处世技巧(双语)
  9. 【元胞自动机】基于元胞自动机模拟交通事故道路通行量matlab源码
  10. linux查找与替换练习