python3实现简单的广度优先搜索code
import queue
dict = {}
dict[“you”] = [“alice”, “bob”, “claire”]
dict[“bob”] = [“anuj”, “peggy”]
dict[“alice”] = [“peggy”]
dict[“claire”] = [“thom”, “jonny”]
dict[“anuj”] = []
dict[“peggy”] = []
dict[“thom”] = []
dict[“jonny”] = []
def pd(x,y):
if y in x:
return y
def gdyxss(a,b):
q = queue.Queue()
q.put(dict[a])
list = []
while not q.empty():
v = q.get()
if v not in list:
jg = pd(v,b)
if jg:
return “已搜索到:{}”.format(jg)
else:
for i in v:
q.put(dict[i])
list.append(v)
return False
print(gdyxss(“you”,“thom”))
不足之处请各位看官予以指正!