{"id":1076,"date":"2023-03-24T09:47:07","date_gmt":"2023-03-24T01:47:07","guid":{"rendered":""},"modified":"2023-03-24T09:47:07","modified_gmt":"2023-03-24T01:47:07","slug":"Python \u56fe\u7b97\u6cd5","status":"publish","type":"post","link":"https:\/\/bianchenghao6.com\/1076.html","title":{"rendered":"Python \u56fe\u7b97\u6cd5"},"content":{"rendered":"
\n
Python \u56fe\u7b97\u6cd5\u8be6\u7ec6\u64cd\u4f5c\u6559\u7a0b<\/span>\n <\/div>\n <\/body>\u6df1\u5ea6\u4f18\u5148\u904d\u5386\uff1a<\/h2>\n
# Filename : example.py<\/span>
# Copyright : 2020 By Lidihuo<\/span>
# Author by : www.lidihuo.com<\/span>
# Date : 2020-08-15<\/span>
class <\/span>graph:
def <\/span>__init__(self,gdict=None):
if <\/span>gdict is <\/span>None:
gdict = {}
self.gdict = gdict
# Check for <\/span><\/span>the visisted and <\/span>unvisited nodes
<\/span> def <\/span>dfs(graph, start, visited = None):
if <\/span>visited is <\/span>None:
visited = set()
visited.add<\/span>(start)
print(start)
for <\/span><\/span>next in <\/span>graph[start] - visited:
dfs(graph, next, visited)
return <\/span>visited
gdict = { \"a\"<\/span><\/span><\/span><\/span> : set([\"b\"<\/span><\/span>,\"c\"<\/span><\/span>]),
\"b\" : set([\"a\", \"d\"<\/span><\/span><\/span>]),
\"c\" : set([\"a\", \"d\"]),
\"d\" : set([\"e\"<\/span><\/span>]),
\"e\" : set([\"a\"])
}
dfs(gdict, 'a'<\/span>)
<\/span><\/code><\/pre>\n<\/p><\/div>\n # Filename : example.py<\/span>
# Copyright : 2020 By Lidihuo<\/span>
# Author by : www.lidihuo.com<\/span>
# Date : 2020-08-15<\/span>
a b d e c
<\/span><\/code><\/pre>\n<\/p><\/div>\n\u5e7f\u5ea6\u4f18\u5148\u904d\u5386<\/h2>\n
\n
\u6211\u4eec\u4f7f\u7528\u524d\u9762\u8ba8\u8bba\u7684\u961f\u5217\u6570\u636e\u7ed3\u6784\u4e3apython\u4e2d\u7684\u56fe\u5f62\u5b9e\u73b0BFS\u3002\u5f53\u6211\u4eec\u7ee7\u7eed\u8bbf\u95ee\u76f8\u90bb\u7684\u672a\u8bbf\u95ee\u8282\u70b9\u5e76\u5c06\u5176\u6dfb\u52a0\u5230\u961f\u5217\u4e2d\u65f6\u3002\u7136\u540e\uff0c\u6211\u4eec\u4ec5\u5f00\u59cb\u4f7f\u6ca1\u6709\u672a\u8bbf\u95ee\u8282\u70b9\u7684\u5269\u4f59\u8282\u70b9\u51fa\u961f\u3002\u5f53\u6ca1\u6709\u4e0b\u4e00\u4e2a\u76f8\u90bb\u8282\u70b9\u8981\u8bbf\u95ee\u65f6\uff0c\u6211\u4eec\u5c06\u505c\u6b62\u7a0b\u5e8f\u3002\n <\/div>\n # Filename : example.py<\/span>
# Copyright : 2020 By Lidihuo<\/span>
# Author by : www.lidihuo.com<\/span>
# Date : 2020-08-15<\/span>
import <\/span>collections
class <\/span>graph:
def <\/span>__init__(self,gdict=None):
if <\/span>gdict is <\/span>None:
gdict = {}
self.gdict = gdict
def <\/span>bfs(graph, startnode):
# Track the visited and <\/span>unvisited nodes using queue
<\/span> seen, queue = set([startnode]), collections.deque<\/span>([startnode])
while <\/span>queue:
vertex = queue.popleft<\/span>()
marked(vertex)
for <\/span><\/span>node in <\/span>graph[vertex]:
if <\/span>node not <\/span>in <\/span>seen:
seen.add<\/span>(node)
queue.append<\/span>(node)
def <\/span>marked(n):
print(n)
# The graph dictionary
<\/span> gdict = { \"a\"<\/span><\/span><\/span><\/span><\/span> : set([\"b\"<\/span><\/span>,\"c\"<\/span><\/span>]),
\"b\" : set([\"a\", \"d\"<\/span><\/span><\/span>]),
\"c\" : set([\"a\", \"d\"]),
\"d\" : set([\"e\"<\/span><\/span>]),
\"e\" : set([\"a\"])
}
bfs(gdict, \"a\")
<\/span><\/code><\/pre>\n<\/p><\/div>\na c b d e
<\/span><\/code><\/pre>\n<\/p><\/div>\n
\n<\/html><\/p>\n","protected":false},"excerpt":{"rendered":"Python \u56fe\u7b97\u6cd5zh-cn","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[126],"tags":[],"class_list":["post-1076","post","type-post","status-publish","format-standard","hentry","category-python3"],"_links":{"self":[{"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/posts\/1076"}],"collection":[{"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/comments?post=1076"}],"version-history":[{"count":0,"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/posts\/1076\/revisions"}],"wp:attachment":[{"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/media?parent=1076"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/categories?post=1076"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bianchenghao6.com\/wp-json\/wp\/v2\/tags?post=1076"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}