Только начал изучать этот алгоритм. Не могу понять почему когда я вызываю функцию - получаю ошибку. Вроде все правильно делаю. Направьте в нужное русло :)
from collections import deque
""" Реализация графов """
graph = {}
graph["you"] = ["alice", "bob", "claire", "mam"]
def person_is_seller(name):
return name[-1] == "m"
def search(name):
search_queue = deque()
search_queue += graph[name]
searched = [] # Массив для отслеживания проверенных данных
while search_queue:
person = search_queue.popleft()
if not person in searched: #Продолжается проверка только если в массиве searcehed данные не засвечены
if person_is_seller(person):
print(person + "is a mango seller ")
return True
else:
search_queue += graph[person] # Данные отмечаются как проверенные
searched.append(person) #Данные добавляются в массив searched
return False
ошибка:
Traceback (most recent call last):
File "C:\Users\Vladik\Desktop\Новая папка\graph.py", line 32, in <module>
search("you")
File "C:\Users\Vladik\Desktop\Новая папка\graph.py", line 28, in search
search_queue += graph[person]
KeyError: 'alice'