LeetCode 有效的数独

题目:

判断一个数独是否有效,根据:Sudoku Puzzles - The Rules

数独部分填了数字,空的部分用 '.' 表示。

一个部分填充是有效的数独。

说明:
一个有效的数独(填了一部分的)不一定是可解的,只要已经填的数字是有效的即可。

解题:判断一个数独是否有效,只要判断每一个行、列、方格有没有重复的数字;通过Set集合来存储每一行的数字;

代码:

1class Solution { 2 public boolean isValidSudoku(char[][] board) { 3 if(null == board || board.length < 9){ 4 return false; 5 } 6 7 Set<Character> rowSet = new HashSet<Character>(); 8 Set<Character> colSet = new HashSet<Character>(); 9 Set<Character> cardSet = new HashSet<Character>(); 10 11 for(int i=0;i<9;i++){ 12 rowSet.clear(); 13 colSet.clear(); 14 cardSet.clear(); 15 for(int j=0;j<9;j++){ 16 17 if(rowSet.contains(board[i][j])){ 18 return false; 19 }else{ 20 if(board[i][j] != '.'){ 21 rowSet.add(board[i][j]); 22 } 23 } 24 25 if(colSet.contains(board[j][i])){ 26 return false; 27 }else{ 28 if(board[j][i] != '.'){ 29 colSet.add(board[j][i]); 30 } 31 }          // 计算九宫格的行列下标 32 int r = j/3+i/3*3; 33 int c = (j%3+i*3) % 9; 34 if(cardSet.contains(board[r][(c)])){ 35 return false; 36 }else{ 37 if(board[r][c] != '.'){ 38 cardSet.add(board[r][c]); 39 } 40 } 41 } 42 } 43 return true; 44 } 45}
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

让Python程序自动玩数独游戏,秒变最强大脑!

作者:小小明,博客地址:https://blog.csdn.net/as604049322最近发现有个玩数独游戏的网站:https://www.sudoku.name/indexcn.php游戏界面如下图所示当然这类玩数独游戏的网站很多,现在我们先以该网站为例进行演示。希望能用Python实现自动计算并填好数独游戏!大概效果能像下面这样就好啦玩过的都非常清楚