Tell us what’s happening:
No idea what I’m supposed to do here. Tried putting different intergers in distances list, but nothing has worked.
After your for loop, add a print() call and pass in the following string to see the values of the variables you have created: f’Unvisited: {unvisited}\nDistances: {distances}'.
Console says:
Traceback (most recent call last):
File “main.py”, line 17, in
NameError: name ‘unvisited’ is not defined
Your code so far
my_graph = {
'A': [('B', 3), ('D', 1)],
'B': [('A', 3), ('C', 4)],
'C': [('B', 4), ('D', 7)],
'D': [('A', 1), ('C', 7)]
}
# User Editable Region
def shortest_path(graph, start):
unvisited = []
distances = {}
for node in graph:
unvisited.append(node)
if node == start:
distances[node] = 0
else:
distances[node] = float('inf')
print(f'Unvisited: {unvisited}\nDistances: {distances}')
# User Editable Region
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0
Challenge Information:
Learn Algorithm Design by Building a Shortest Path Algorithm - Step 30