『パズルで鍛えるアルゴリズム力』の第3章で紹介されている「15パズル」をPythonで取り組んでみました。
「反復深化A*」アルゴリズム、面白いですね。
3_1_15puzlle_solver.py
実行
% python 3_1_15puzlle_solver.py 15puzzle input: 1 2 3 4 5 6 0 8 9 10 7 11 13 14 15 12 ----- 0 th move: 1 2 3 4 5 6 0 8 9 10 7 11 13 14 15 12 ----- 1 th move: 1 2 3 4 5 6 7 8 9 10 0 11 13 14 15 12 ----- 2 th move: 1 2 3 4 5 6 7 8 9 10 11 0 13 14 15 12 ----- 3 th move: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0