猫史档案馆


BFS在python中的编程

用户:JMY_ESJMY_ES查看:0 回复:1 评论:0 创建时间:2023-03-16T21:59:15


from collections import deque
#用数组记录邻居
graph = {}
graph["you"] = ["alice", "bob", "claire"]
graph["bob"] = ["anuj", "peggy"]
graph["alice"] = ["peggy"]
graph["claire"] = ["thom", "jonny"]
graph["anuj"] = ['']
graph["peggy"] = ['']
graph["thom"] = ['']
graph["jonny"] = []
def person_is_heizi(name):
    return name[-1] == 'j'
def BFS(name):
    search_queue = deque()
    search_queue += [name]
    #这是你记录你以前搜索过哪些人的方式。
    searched = set()
    while search_queue:
        person = search_queue.popleft()
        #仅在你尚未搜索此人的情况下搜索此人。
        if person in searched:
            continue
        if person_is_heizi(person):
            print(person + "是小黑子!")
            return True
        search_queue += graph[person]
        #将此人标记为搜索
        searched.add(person)
    return False
BFS("you")

用pycharm


回复

上一页1 页 / 共 1下一页
zyf神鹰zyf神鹰

ddd

点赞0


评论