36. Valid Sudoku
来源:互联网 发布:caj转word转换器 mac 编辑:程序博客网 时间:2024/06/11 06:26
9个横行9个竖行9个3*3的方格各设置一个set。
对每个方格遍历,“。”继续,数字的话判断哪个格的横竖行有没有重复的数字。
方格判断用的是i/3*3 + j/3把9*9的格分成
public class Solution {
public boolean isValidSudoku(char[][] board) {
List<Set<Character>>rl=new ArrayList<Set<Character>>();
List<Set<Character>>cl=new ArrayList<Set<Character>>();
List<Set<Character>>sl=new ArrayList<Set<Character>>();
for(int i=0;i<9;i++){
rl.add(new HashSet<Character>());
cl.add(new HashSet<Character>());
sl.add(new HashSet<Character>());
}
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
char c=board[i][j];
if(c=='.')continue;
else if(rl.get(i).contains(c) || cl.get(j).contains(c) || sl.get(i/3*3 + j/3).contains(c)) return false;
else{
rl.get(i).add(c);
cl.get(j).add(c);
sl.get(i/3*3+j/3).add(c);
}
}
}
return true;
}
}了9个3*3;
- [LeetCode]36.Valid Sudoku
- 36. Valid Sudoku
- LeetCode --- 36. Valid Sudoku
- LeetCode 36.Valid Sudoku
- [Leetcode] 36. Valid Sudoku
- 36. Valid Sudoku
- 【leetcode】36. Valid Sudoku
- 36. Valid Sudoku
- 36. Valid Sudoku
- [leetcode] 36. Valid Sudoku
- Leetcode 36. Valid Sudoku
- 36. Valid Sudoku
- 36. Valid Sudoku LeetCode
- 36. Valid Sudoku
- 36. Valid Sudoku
- 36. Valid Sudoku
- 36. Valid Sudoku
- 36. Valid Sudoku
- 1012. The Best Rank (25)
- 【NYOJ】[477]A+B Problem III
- HDU 4508湫湫系列故事――减肥记i-简单的完全背包
- python学习笔记——文件操作
- 【Linux命令】crontab命令
- 36. Valid Sudoku
- 【Linux命令】grep命令
- 【NYOJ】[599]奋斗的小蜗牛
- MySQL时间戳转换
- UVA 10617 Again Palindrome
- sqlserver中判断表或临时表是否存在
- 算法导论例程——哈希表
- PHP 数组
- PHP 字符串