from functools import lru_cache
class TreeNode:
def __init__(self, val):
self.val = val
self.left, self.right = None, None
# 二叉树
visited = set()
@lru_cache
def DFS(node: TreeNode):
if node in visited:
return
# 处理当前层
visited.add(node)
# 开始递归
DFS(node.left)
DFS(node.right)
# 多叉树
visited = set()
def dfs(node: TreeNode, visited:set):
visited.add(node)
for next_node in node.children():
DFS(next_node, visited)
树的DFS遍历
猜你喜欢
转载自blog.csdn.net/qq_44291044/article/details/105178557
今日推荐
周排行