数独爱好者的 C++版深搜广搜解法,代码挺清爽,逻辑也清晰。初学算法的朋友可以拿来练练手,感受一下递归和队列的魅力。输入输出简单直观,不花哨也不绕,思路比刷题网站上某些解法还要清楚些,蛮适合新手入门。
DFS的写法比较经典,递归进去的时候判断数独是否符合规则,不符合就回溯回来,写得还挺标准。
BFS的版本稍微复杂点,用了个队列维护状态,适合想练习状态遍历的小伙伴。虽然效率没 DFS 高,但看起来比较直观,结构也清楚。
如果你刚入门算法,建议先把 DFS 版本搞明白,再去试着理解 BFS 写法。写着写着你就会发现,多算法题其实就那么回事。
哦对了,顺手一提,想顺便玩玩在线数独的话可以看看Squarezzle 数独游戏,边玩边学,效果还不错。