是否有任何算法可以在不猜测的情况下解决任何传统数独难题? 这里的“猜测”指尝试一个候选数字,看它能填多远,如果发现矛盾,则回溯到猜测步骤并尝试另一个候选数字;当所有候选数字都用完了但没有成功时,则回溯到上一个猜测步骤(如果有的话;否则谜题证明无效),等等。 编辑1:感谢您的回复。 传统数...
我正在使用Java编写一个9x9网格的数独求解器。 我有以下方法: 打印网格 用给定的值初始化棋盘 检测冲突(如果相同的数字在同一行或3x3子网格中) 一个逐个放置数字的方法,这需要最多的工作。 在详细讨论该方法之前,请记住我必须使用递归来解决问题,以及回溯(请参考此处的应用程序ht...
我正在用Javascript编写一个数独游戏,只是为了好玩。 一切都运行正常,每次都会生成一个完整的解决方案。 我的唯一问题是,这是阻止我发布项目的原因 的是我不知道如何为难度级别评分。我到处找过资料, 在论坛上发布过帖子等等。我不想自己编写算法,这不是这个项目的重点,而且,对于我这样的非数...
我承担了使用遗传算法创建数独求解器的任务。 初始化:将给定值存储在每个染色体中,然后随机生成值,使得每行都是1到9之间值的有效排列。 适应度:由每行、每列和正方形格子中"不正确"的值的数量加在一起来确定。 适应度函数:典型的轮盘选择。 选择:随机选择,但使用轮盘选择进行加权。 交叉:...
是的,我知道这并不新鲜,已经有很多问题了(它甚至有自己的标签),但我想单独使用Java创建数独求解器,目的是训练自己编写更高效代码的能力。 在程序中完成这个任务最简单的方法可能是使用大量的循环遍历每一列和每一行,收集每个单元格的可能值,然后排除只有一个可能性的单元格(无论它们是否只包含一个数...
两天前,我得到了一道数独问题,尝试用Python 3解决。已经告知有解,但不确定是否存在多种解决方案。 问题如下:一个9x9的数独网格完全为空。然而,它包含彩色框,并且这些框内数字的总和必须是平方数。除此之外,普通的数独规则也适用。 问题在于不是解决数独难题,而是生成一个可行的拼图,满足彩...
这是一个来自Pramp的问题。我需要确定数独是否可解(不像LEETcode问题,我只需要确定一个棋盘是否有效)。 以下是我的JavaScript代码,使用递归。我遵循了Pramp建议的逻辑,创建了一个helper函数getCandidates()来查找所有可以放入空格的候选数。然后在实际的s...
我正在尝试用Python创建数独检查器: ill_formed = [[5,3,4,6,7,8,9,1,2], [6,7,2,1,9,5,3,4,8], [1,9,8,3,4,2,5,6,7], [8,5,9...