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

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

题目地址:

题目解析:使用最笨的办法,行优先遍历需要填的空,使用1到9去尝试,然后判断是否符合条件;如果不符合条件则尝试下一个数字,如果符合条件则尝试下一个需要填的空。使用递归方法实现。

题目解答:

public class Solution {    public void solveSudoku(char[][] board) {        solveSudoku(board,0,0);    }        public boolean solveSudoku(char[][] board,int row,int column){        if(row >= 9){            return true;        }                if(column >= 9){            return solveSudoku(board,row+1,0);        }                if(board[row][column] == '.'){            for(int k = 1;k<=9;k++){                board[row][column] = (char)('0'+k);                if(isValid(board,row,column)&&solveSudoku(board,row,column+1)){                    return true;                }                board[row][column] = '.';            }            return false;        }else {            return solveSudoku(board,row,column+1);        }    }        private boolean isValid(char[][] board,int row,int column){        for(int i = 0;i<9;i++){            if(i!=row && board[i][column] == board[row][column]){                return false;            }        }                for(int i = 0;i<9;i++){            if(i!=column && board[row][i] == board[row][column]){                return false;            }        }                int boxStartRow = (row/3)*3;        int boxStartColumn = (column/3)*3;                for(int i = boxStartRow;i

 

转载于:https://www.cnblogs.com/xiongyuesen/p/4424848.html

你可能感兴趣的文章
Linux之 VIM 编辑器
查看>>
实用网址集合
查看>>
【转】移动web资源整理
查看>>
【Linux】CentOS7下安装JDK详细过程
查看>>
(转)Hibernate 的应用(Hibernate 的结构)?
查看>>
Ubuntu terminator 多窗口终端的快捷键
查看>>
Add Binary leetcode
查看>>
关于pycharm中缩进、粘贴复制等文本编辑功能部分失效的解决办法
查看>>
[20190524]浅谈模糊查询.txt
查看>>
Swift 构造与析构
查看>>
Java基础学习总结--Java对象的序列化和反序列化
查看>>
关于application/x-www-form-urlencoded等字符编码的解释说明
查看>>
svn项目冲突时显示无法加载项目的解决方法
查看>>
node论坛练手
查看>>
[Python3网络爬虫开发实战] 1.7.3-Appium的安装
查看>>
magento 购物车 首页 显示
查看>>
mapper.xml
查看>>
模拟EventCenter,flash自带的事件机制的一个解耦框架,callback回调方式用于模块之间的通信...
查看>>
zookeeper选主算法二
查看>>
JS 中的require 和 import 区别整理
查看>>