思路:挨个判断当前要填入的数据是否合适,合适就填入

class Solution {public void solveSudoku(char[][] board) {write(board);}public boolean write(char [][] board){for (int i=0;i<9;i++){for (int j=0;j<9;j++){if (board[i][j]!='.'){continue;}for (char k='1';k<='9';k++){if (!checkLHB(i,j,board,k)){continue;//检查要填入的数字是否合适,不合适跳出本次循环}board[i][j]=k;//合适就填入if (write(board)){//回溯return true;}//如果出现不合适的数据就会返回false,此时board[i][j]=.board[i][j]='.';}return false;}}return true;}public boolean checkLHB(int i,int j,char[][] board,char curchar){for (int m=0;m<9;m++){//检查当前列if (board[i][m]==curchar){return false;}}for (int n=0;n<9;n++){//检查当前行if (board[n][j]==curchar){return false;}}//检查当前九宫格int x=(i/3)*3;int y=(j/3)*3;for (int m=x;m<x+3;m++){for (int n=y;n<y+3;n++){if (board[m][n]==curchar){return false;}}}return true;}
}

完成数独--java相关推荐

  1. java课程 数独 文库_数独java

    数独游戏的算法研究与实现_IT/计算机_专业资料.数独游戏的算法研究与实现 java lSSN1009-3044 ComputerKnowledgeAnd MnoJ;01∥电奠知识与技术 E-mail ...

  2. 数独java界面基础_java版数独游戏界面实现(二)

    本文实例为大家分享了java版数独游戏界面实现的具体代码,供大家参考,具体内容如下 实现效果图: 这里写图片描述 主函数用于启动程序: package hlc.shudu.app; import hl ...

  3. [编程题]数独(JAVA)

    数独是一个我们都非常熟悉的经典游戏,运用计算机我们可以很快地解开数独难题,现在有一些简单的数独题目,请编写一个程序求解. 输入描述: 输入9行,每行为空格隔开的9个数字,为0的地方就是需要填充的. 输 ...

  4. 数独java(二维深搜)

    题目 你一定听说过"数独"游戏. 如[图1.png],玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行.每一列.每一个同色九宫内的数字均含1-9,不重复. ...

  5. 数独java界面基础_Java从基础到进阶学习之路—-数独小游戏制作(二) | 学步园...

    详细设计 游戏数据结构设计 显然,需要存储数据的地方只有九宫格地图部分. 对于地图,很明显我们可以采用二维数组int [] [] game;来存储地图中的数据.但是int的二维数组虽然直接简单,但是还 ...

  6. 力扣 #36.有效的数独 JAVA实现

    36.有效的数独 题目:请你判断一个 9 x 9 的数独是否有效.只需要 根据以下规则 ,验证已经填入的数字是否有效即可. 数字 1-9 在每一行只能出现一次. 数字 1-9 在每一列只能出现一次. ...

  7. 递归生成数独java_[leetcode] 37. 解数独(Java)(dfs,递归,回溯)

    1A 这个题其实15分钟左右就敲出来并且对了...但是由于我输错了一个数..导致我白白debug一个多小时.. 没啥难度,练递归-dfs的好题 class Solution { private int ...

  8. LeetCode-初级算法-有效的数独 ( java )

    运行结果 1.题目 2.分析 1. 题目的本质就是判断每行.每列.每个单元格的九个元素中的数字是否有重复值. 2. 判断的方法:利用Set集合的add方法的返回值可以进行判断.将每组中的数字元素使用a ...

  9. Java黑皮书课后题第8章:*8.24(检验数独的解决方案)程序清单8-4通过检测棋盘上的每个数字是否是有效的,从而检验一个解决方案是否是有效的。重写该程序,通过检验是否每行、每列、每个小方盒中具有

    *8.24(检验数独的解决方案)程序清单8-4通过检测棋盘上的每个数字是否是有效的,从而检验一个解决方案是否是有效的.重写该程序 题目 题目描述 程序清单8-4 破题 代码 题目 题目描述 *8.24 ...

  10. JAVA代码—算法基础:数独问题(Sodoku Puzzles)

    JAVA代码-算法基础:数独问题(Sodoku Puzzles) 数独问题(Sodoku Puzzles) 数独游戏(日语:数独 すうどく)是一种源自18世纪末的瑞士的游戏,后在美国发展.并在日本得以 ...

最新文章

  1. Android Volley入门到精通:初识Volley的基本用法
  2. IOS 同步请求和异步请求 ios开发教程
  3. ASP.NET MVC导出excel(数据量大,非常耗时的,异步导出)
  4. HDU - 6756 Finding a MEX-分块思想
  5. 在CentOS6.5上安装Tomcat6
  6. laravel services.php,「Laravel框架中使用Service模式」- 海风纷飞Blog
  7. panoramio.com
  8. Swagger2-注解说明
  9. 数据库、数据湖、数据仓库、湖仓一体、智能湖仓,分别都是什么鬼
  10. 怎么判断冠词用a还是an_怎么判断英语量词改用a还是an
  11. 财务系统如何避免对账时一分钱误差?
  12. python按钮点击事件wx_wx.python事件的绑定
  13. MarkDown图床助手: 截图-传图-生成url 一步到位
  14. spack Bootstrapping Mirrors
  15. PHP微信根据订单号查询支付结果,9. PHP接入微信支付订单、退款订单、转款订单的查询...
  16. 课题:shell脚本安装httpd
  17. docker学习至docker-compose
  18. Mysql如何添加环境变量(详细教程)
  19. 严格对角化基态Lanczos算法C++ Eigen实现
  20. 程序员放松的8个好网站推荐

热门文章

  1. unity 启动相机_Unity中常用的几种相机
  2. 静态路由转换成动态路由_三个路由将逗号分隔的列转换为行
  3. 计算机课没有带鞋套检讨,忘带东西的检讨书例文
  4. 【CSDN实训】面向对象编程的概念及应用方法
  5. 基于微信企业号的校园服务器,基于微信企业号的高校信息服务系统的设计与实现...
  6. C#窗体 登录实名注册密码找回
  7. wangEditor富文本编辑器的调用开发实录(v5版本、获取HTML内容、上传图片、隐藏上传视频)
  8. 这是计算机教室吗英语怎么写,小学英语四年级下册第1、2单元测试题
  9. 英语题目翻译——OJ_ 8436:Saving Tang Monk
  10. 飞浆EasyDL半自动标注语义分割及数据导出