树的DFS:深度优先搜索,从根到叶的遍历方法

树由节点和边组成,每个节点(除根外)有一个父节点,可有多子节点。DFS(深度优先搜索)是“深入一条路到黑再回溯”的遍历方法。树的DFS遍历含前序(根→左→右)、中序、后序,前序最直接体现根到叶路径。 递归实现前序遍历:访问当前节点→递归左子树→递归右子树。以示例树(根1,左2、右3;2左4、右5)为例,顺序为1→2→4→5→3。非递归用栈:初始化栈入根,循环弹出栈顶访问,先右后左入栈子节点。 根到叶DFS遍历用于路径求和、输出路径等问题。递归实现直观,非递归用栈模拟适合大数据。掌握前序遍历是树结构核心技能。

阅读全文
二叉树:二叉树的三种遍历方式,递归实现超简单

这篇文章介绍了二叉树的三种经典遍历方式(前序、中序、后序),基于递归实现,核心是明确根节点的访问位置。 二叉树每个节点最多有左右子树,遍历即按特定顺序访问节点。递归是关键,类似“套娃”,函数自调用且范围缩小,直到遇到空节点终止。 三种遍历顺序区别:前序(根→左→右)、中序(左→根→右)、后序(左→右→根)。以示例树(根1,左2,右3;2的左4,右5)为例: - 前序遍历结果:1 2 4 5 3; - 中序遍历结果:4 2 5 1 3; - 后序遍历结果:4 5 2 3 1。 递归实现核心:终止条件(空节点返回)+ 按遍历顺序递归左右子树。通过明确根位置和递归逻辑,可清晰理解遍历过程。

阅读全文