【LeetCode-36】Valid Sudoku
来源:互联网 发布:安卓鼓机软件 编辑:程序博客网 时间:2024/05/16 20:28
这道题做起来非常简单了,开始错误的理解了题目的意思,首先判断每一行是否有重复元素,再判断每一列是否有重复元素,最后判断每一个9宫格是否有重复元素
判断9宫格时,要细心一些。
public class ValidSudoku {Map<Integer,Character> map = new HashMap<Integer, Character>();public boolean isValidSudoku(char[][] board) {boolean result = true;//每一行for(int i = 0;i < 9;i ++){initMap();for(int j = 0;j < 9;j ++){if(board[i][j] != '.'){if(map.containsValue(board[i][j])){return false;}else{map.put(j, board[i][j]);}}}}//每一列for(int i = 0;i < 9;i ++){initMap();for(int j = 0;j < 9;j ++){if(board[j][i] != '.'){if(map.containsValue(board[j][i])){return false;}else{map.put(j, board[j][i]);}}}}//判断每一个9宫格for(int k = 0;k < 3;k ++){for(int m = 0;m < 3;m ++){initMap();int count = 0;for(int i = 3 * k;i < 3 * k + 3;i ++){for(int j = 3 * m;j < 3 * m + 3;j ++){if(board[i][j] != '.'){if(map.containsValue(board[i][j])){return false;}else{map.put(count ++ , board[i][j]);}}}}}}return result; }public void initMap(){map = new HashMap<Integer, Character>();}}
0 0
- [leetcode 36] Valid Sudoku
- leetcode 36: Valid Sudoku
- LeetCode(36) Valid Sudoku
- leetcode-36 Valid Sudoku
- Valid Sudoku - LeetCode 36
- LeetCode 36 Valid Sudoku
- LeetCode---(36) Valid Sudoku
- Leetcode 36 Valid Sudoku
- Leetcode[36]-Valid Sudoku
- leetcode 36: Valid Sudoku
- Leetcode# 36 Valid Sudoku
- Leetcode#36||Valid Sudoku
- leetcode-36 Valid Sudoku
- leetcode 36:Valid Sudoku
- LeetCode 36: Valid Sudoku
- [leetcode 36] Valid Sudoku
- 【LEETCODE】36-Valid Sudoku
- Leetcode 36 - Valid Sudoku
- org.hibernate.ObjectNotFoundException: No row with the given identifier exists:
- OpenCV入门:显示图像
- Qt 源码编译详细说明
- JavaCard开发环境搭建
- 2016年3月18日10:11:36
- 【LeetCode-36】Valid Sudoku
- 从头认识设计模式-策略模式-06-对前面几个章节思考的总结
- 关于solver设置的一些问题
- MIPI接口
- linux下如何编译c++工程项目
- 排序之快速排序java版
- ScaleAnimation动画
- 《python计算机视觉编程》读书笔记------4(Numpy篇)
- 数据校验脚本-检验null值