leetcode_Valid Sudoku
来源:互联网 发布:java ee8 编辑:程序博客网 时间:2024/05/19 18:11
描述:
Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.
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.
思路:
和一圈又一圈由外而内打印数字一样,考察的也就是程序的执行流程和边界值的把握。而这一题就更简单,由题意可知,本题考查的是每行每列和9个板块之间是不是都符合要求,和八皇后有点像,但要简单的多。
代码:
public class Solution { public boolean isValidSudoku(char[][] board) { BitSet set=new BitSet(); int i,j,m,k,index_i,index_j; int num=0; //to evaluate if the 9 blocks are OK for( i=0;i<board.length;i+=3) { for( j=0;j<board[0].length;j+=3) { set.clear(); index_i=i+3; index_j=j+3; for( m=i;m<index_i;m++) { for( k=j;k<index_j;k++) { if(board[m][k]!='.') { num=board[m][k]-'0'; if(!set.get(num)) set.set(num); else return false; } } } } } //to evaluate the rows for(i=0;i<board.length;i++) { set.clear(); for(j=0;j<board[0].length;j++) { if(board[i][j]!='.') { num=board[i][j]-'0'; if(!set.get(num)) set.set(num); else return false; } } } //to evalueate the colums for(j=0;j<board[0].length;j++) { set.clear(); for( i=0;i<board.length;i++) { if(board[i][j]!='.') { num=board[i][j]-'0'; if(!set.get(num)) set.set(num); else return false; } } } return true; }}
0 0
- Leetcode_valid-sudoku
- LeetCode_Valid Sudoku
- leetcode_Valid Sudoku
- leetcode_Valid Sudoku and Sudoku Solver (数独游戏) _easy
- Leetcode_valid-parentheses
- Leetcode_valid-palindrome
- Leetcode_Valid Palindrome
- leetcode_Valid Palindrome
- leetcode_Valid Number
- leetcode_Valid Parentheses
- leetcode_Valid Anagram
- leetcode_Valid Anagram_easy
- LeetCode_Valid Parentheses
- LeetCode_valid-anagram
- leetCode_Valid Number
- leetcode_Valid Perfect Square
- Sudoku
- sudoku
- windows安全警告与SDL检查
- Spring 3 MVC深入研究
- [JQ权威指南]第八天:复制元素节点
- wifi连接android设备进行调试
- 约瑟夫环问题 【循环链表的应用】
- leetcode_Valid Sudoku
- window远程桌面连接 Ubuntu 14.04
- linux下Qt调用非标准库中的函数调用----------如pthread_create、pthread_cond_***、、
- python中web框架
- C#下查找并杀死子进程(进程树)
- 链接服务器 OLE DB 访问接口 'SQLNCLI10' 返回的数据与列所需的数据长度不匹配
- Android 应用锁/程序锁(APPLock)的实现 http://shigongbo.blog.163.com/blog/static/976090201452572535715
- ExtJs 进度条
- 吐槽之程序开发是否要参加培训