← 返回工具箱
🧩 数独求解器

输入数独谜题

在格子中输入已知数字(1-9),空格留空,然后点击"求解"

📖 数独求解算法

本求解器使用的是经典的回溯算法(Backtracking),这是求解数独最直观的计算机方法之一。除此之外,还有多种更高效的求解策略。

主流求解算法对比

算法原理效率
回溯法 (Backtracking)逐格尝试1-9,遇到冲突则回退重试简单但较慢,最坏情况需大量回溯
约束传播 (Constraint Propagation)每次填入数字后,自动排除相关格的候选值大幅减少搜索空间,常与回溯结合使用
舞蹈链 (Dancing Links / DLX)将数独转化为精确覆盖问题,用双向链表高效回溯最快的通用方法之一,由Knuth发明

计算复杂度

数独求解是NP完全问题(广义n²×n²数独)。标准9×9数独的解空间约有6.67×10²¹种可能的终盘排列,但给定提示数后通常可快速求解。
💡 小贴士:Peter Norvig提出的约束传播+回溯组合算法,可以在毫秒级内求解绝大多数数独谜题。本工具中的纯回溯实现虽简单,对标准数独也足够高效。