图遍历 Graph Traversal, Topological Sort, Unicom Branch
Depth First Search Tree
递归形式
# Edge is the collection of edges<nodeA, nodeB>
def dfs(node):
visited[node] = True
for edgeV, edgeW in Edge:
if visited[edgeW] == False:
dfs(edgeW)
迭代形式
def dfs(node):
s = [] # stack
s.append(node)
visited[node] = True
while len(s) > 0:
v = s.pop()
for edgeV, edgeW in Edge:
if visited[edgeW] == False:
s.append(edgeW)
visited[edgeW] = True
Bread First Search Tree
https://leetcode.cn/problems/word-ladder/
Stack