我正在尝试编写一个数独求解器,我尝试这样做的方法是拥有一个 9x9 的指针网格,这些指针包含具有解决方案或有效可能值的“集合”对象的地址。
我能够通过 2 个 for 循环遍历数组,首先遍历每一列,然后转到下一行并重复。
但是,我很难想象如何指定特定单元格属于哪个子网格(或框、块等)。我最初的印象是在 for 循环中有 if 语句,例如 if row < 2 (rows start at 0) & col < 2 then we're in the 1st block,但这似乎变得混乱。会有更好的方法来做到这一点吗?