Skip to content

Commit a4869fb

Browse files
Merge pull request steam-bell-92#1501 from jatingow/fix/pathfinding-no-path-message
fix: detect and report unreachable end node in Pathfinding Visualizer
2 parents fa08c0f + af17a6c commit a4869fb

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

utilities/Pathfinding-Visualizer/Pathfinding-Visualizer.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,17 @@ def run_dijkstra(grid, start, end):
5757
while previous[curr] is not None:
5858
path.append(curr)
5959
curr = previous[curr]
60+
61+
if curr != start:
62+
return False
6063

6164
for p in reversed(path):
6265
if p != end and p != start:
6366
grid[p[0]][p[1]] = '*'
6467
clear_screen()
6568
print_grid(grid)
6669
time.sleep(0.05)
70+
return True
6771

6872
def main():
6973
rows, cols = 10, 20
@@ -80,13 +84,17 @@ def main():
8084
grid[i][6] = '█'
8185
for i in range(1, 7):
8286
grid[i][12] = '█'
83-
87+
8488
print("🗺️ Pathfinding Visualizer (Terminal Edition)")
8589
print("S = Start, E = End, █ = Wall, . = Visited, * = Path")
8690
input("Press Enter to run Dijkstra's Algorithm...")
91+
92+
path_found = run_dijkstra(grid, start, end)
93+
if path_found:
94+
print("✅ Finished Pathfinding! Path found.")
95+
else:
96+
print("❌ No path exists between Start and End!")
8797

88-
run_dijkstra(grid, start, end)
89-
print("Finished Pathfinding!")
9098

9199
if __name__ == "__main__":
92100
main()

0 commit comments

Comments
 (0)