java数独解算器,而不是回溯解算器
过去几周我一直在做一个数独游戏。 该游戏具有很多功能,如:玩游戏、打印数独、解数独
解算函数使用传统的回溯,但这不是问题所在,问题是我需要游戏能够生成一个人类可解的数独,为此我需要一种方法,能够像人类那样解数独
如果有人能帮我解决这个问题,我将不胜感激
你可以在下面搜索框中键入要查询的问题!
过去几周我一直在做一个数独游戏。 该游戏具有很多功能,如:玩游戏、打印数独、解数独
解算函数使用传统的回溯,但这不是问题所在,问题是我需要游戏能够生成一个人类可解的数独,为此我需要一种方法,能够像人类那样解数独
如果有人能帮我解决这个问题,我将不胜感激
# 1 楼答案
大量针对人类玩家的数独解决策略在Andrew Stuart's Sudoku page上得到了很好的展示和解释:
作为一个相当频繁的玩家,我会将策略11之外的一切判断为“不再有趣”。但这可能是品味的问题
# 2 楼答案
如果你只需要一个快速的随机数独游戏,你可以使用一种特殊的方法创建一个有效的数独模式,使用我刚才想出的以下算法:
最后一组数独表:
这是有效的。之后,你可以拿出一些数字,然后用你已有的算法检查它是有一个解,还是有多个解。如果删除某个数字会产生多个,则可以撤消该数字并结束删除,或者尝试删除另一个数字