我正在解决一个 AI 课程的问题,我必须使用 Python 中的 BFS 算法实现图形搜索。我的实现实际上找到了解决方案,但它扩展了太多节点。答案说应该扩展 269 个节点,但我得到了 275 个。
为了跟踪访问过的节点,我使用字典。键是展开状态,值是 1。一旦我得到一个节点的后继者,我会检查它们是否存在于字典中。如果是,我就忽略这个继任者。如果没有,我把它推到边缘(队列)。我认为这个过程会阻止扩展已经访问过的节点,但似乎并非如此。
任何人都可以给我一个提示吗?不需要任何代码,因为我想要的只是对可能出现的问题有所了解。
提前致谢。