文件名称:ENPM661
文件大小:654KB
文件格式:ZIP
更新时间:2024-03-27 04:42:01
Python
ENPM661 Project1:解决16个拼图 初始状态存储为一维列表。 例如[1 2 4 5 7 8 9 10 0 11 12 13 15 14 3 6]要达到的目标状态是[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] 该程序使用蛮力方法达到目标状态。 程序遵循以下逻辑 将初始状态附加到打开列表和访问列表。 有一个for循环遍历打开列表。 查找空白图块的位置,并检查该图块的可能运动。 检查是否已经拜访了新孩子。 如果不是,则将其附加到访问列表和打开列表中,并使用新获得的子节点的值更新字典以回溯所遵循的路径。 在未来的迭代中,将基于打开的列表中的后续子节点来验证开放列表中的新节点。 在每次迭代后验证是否达到目标状态。 如果到达,则将空白磁贴的所有访问状态写入到名为nodePath.txt的文件中,并将从目标到目标的所有路径都写入一个名为node
【文件预览】:
ENPM661-main
----Project1()
--------nodetrack1.txt(156B)
--------nodetrack5.txt(351B)
--------nodePath4.txt(10KB)
--------16puzzle.py(7KB)
--------nodePath3.txt(7KB)
--------nodetrack4.txt(312B)
--------nodePath2.txt(4KB)
--------nodetrack2.txt(234B)
--------nodetrack3.txt(273B)
--------nodePath5.txt(23KB)
--------nodePath1.txt(1KB)
----README.md(3KB)
----Project2()
--------bfspath2.txt(462KB)
--------bfstrack2.txt(1KB)
--------bfspath1.txt(824KB)
--------P2_DIJKSTRA.py(21KB)
--------dijpath1.txt(824KB)
--------dijtrack2.txt(1KB)
--------P2_BFS.py(16KB)
--------dijtrack1.txt(4KB)
--------bfstrack1.txt(4KB)
--------dijpath2.txt(385KB)