TypeScript: 二叉树中序遍历(递归与非递归实现)
发布时间
阅读量:
阅读量
TypeScript算法-94.二叉树的中序遍历
- 思路
- 解法一
- 解法二
思路
许久未接触树结构,感觉有些生疏了。不过仍记得先序、中序和后序遍历的核心区别在于根节点的访问顺序,其中中序遍历的规则是优先访问左子树,接着处理当前节点,最后再遍历右子树。
查阅了自己以前写的博客的内容,《没啥说的》一文中对各类遍历方式的描述较为清晰,记录得也比较到位。
解法一
采用递归方式实现时,需特别关注递归过程中的终止条件,并确保遍历所得结果能够被正确存储于全局变量中。
type TNode = TreeNode | null;
/** Definition for a binary tree node. */
class TreeNode {
val: number;
left: TNode;
right: TNode;
constructor(val?: number, left?: TNode, right?: TNode) {
this.val = val !== undefined ? val : 0;
this.left = left !== undefined ? left: null;
this.r
全部评论 (0)
还没有任何评论哟~
