博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode : Valid Sudoku
阅读量:5293 次
发布时间:2019-06-14

本文共 1200 字,大约阅读时间需要 4 分钟。

Determine if a Sudoku is valid, according to: .

The Sudoku board could be partially filled, where empty cells are filled with the character '.'.

 

A partially filled sudoku which is valid.

 

 

Note:

A valid Sudoku board (partially filled) is not necessarily solvable. Only the filled cells need to be validated.

 

tag :  HashSet 、  add 操作 及返回值。  

if(board[i][j] != '.' && !rows.add(board[i][j])) {

return false;
}

此行代码: 先做了添加操作,再返回的值,所以 二者合一。

另外:  而为矩阵的行列转换技巧  除法和求余数

 

public class Solution {    public boolean isValidSudoku(char[][] board) {                for(int i = 0; i < 9 ;i++) {            HashSet
rows = new HashSet
(); HashSet
cols = new HashSet
(); HashSet
cube = new HashSet
(); for(int j = 0; j < 9; j++) { //row if(board[i][j] != '.' && !rows.add(board[i][j])) { return false; } if(board[j][i] != '.' && !cols.add(board[j][i])) { return false; } int row = 3*(i/3); int col = 3*(i%3); if(board[row + j/3][col + j%3]!='.' && !cube.add(board[row + j/3][col + j%3])) return false; } } return true; }}

  

 

转载于:https://www.cnblogs.com/superzhaochao/p/6422281.html

你可能感兴趣的文章
JavaScript基础---获取元素的属性(title,style,width)
查看>>
简单了解HashCode()
查看>>
闭包理解
查看>>
asp.net C#后台实现下载文件的几种方法(全)
查看>>
Web前端开发工程师的具备条件
查看>>
为什么要用日志框架 Logback 基本使用
查看>>
实用Android开发工具和资源精选
查看>>
TileMap
查看>>
JS属性大全
查看>>
java复制文件
查看>>
第一册:lesson seventy nine.
查看>>
GCD的同步异步串行并行、NSOperation和NSOperationQueue一级用dispatch_once实现单例
查看>>
团队作业
查看>>
数据持久化时的小bug
查看>>
mysql中key 、primary key 、unique key 与index区别
查看>>
bzoj2257
查看>>
Linux查看文件编码格式及文件编码转换<转>
查看>>
Leetcode: Find Leaves of Binary Tree
查看>>
Vue 模板解释
查看>>
http://www.bootcss.com/
查看>>