史上最全二叉树遍历详解(Java实现,原理相同)

二叉树遍历方法合集:

在这里插入图片描述
最近在LeetCode力扣上刷数据结构的二叉树合集,遇到的二叉树遍历方法,于是想理解透彻。本文讲解了二叉树遍历的四种方法,前、中。后序遍历。

对应题目:
94.二叉树的中序遍历
144.二叉树的前序遍历
145.二叉树的后序遍历
102.二叉树的层序遍历

只要参考任意一种解法的代码,将其中的输出代码替换成添加数组元素即可。
我的本意是想让大家能深入的理解二叉树遍历的过程,之后完成这三道题和其它二叉树遍历的题目能够感觉轻松一点。

递归解法

递归解法是比较常用而且容易理解的方法,只要理解了思路就能够很好的去使用他。
**比如前序遍历:**前序遍历的递归方法就是:根、左、右,先打印根节点,只有再去寻找他的左子树,左子树找到末尾的时候返回再找又指数,直到完成。

下面放代码:

前序遍历

public static void PreOrderRecur(TreeNode root){
   
	if(root == null) return;
	System.out.println(root.data);
	PreorderRecur(root.left);
	PreorderRecur(root.right);
}

中序遍历

public static void InOrderRecur(TreeNode root){
   
	if(root == null) return;
	InorderRecur(root.left);
	System.out.println(root.data);
	InorderRecur(root.right);
}

后序遍历

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值