Tips
DFS
recursion
visited = set()
def dfs(node, visited):
if node in visited: # terminator
# already visited
return
visited.add(node)
# process current node here.
...
for next_node in node.children():
if next_node not in visited:
dfs(next_node, visited)BFS
time: O(V+E)

注意: 102, 127 example
127 word ladder, 一開始記得要移掉 beginWord
Last updated