Java面试题LeetCode 94二叉树中序遍历
Java 面试的高频题里,二叉树的中序遍历算是老朋友了。这份压缩包里,整理得还挺清楚的:用 Java 写的递归和迭代两种方式,代码简洁,逻辑也不绕,适合想快速过一遍的同学。
二叉树遍历的方法说起来不难,真正写起来还是挺容易卡壳的。尤其是迭代方式,栈的使用要多练。你如果还搞不清中序是“左-根-右”,那建议先去看看这篇《前序、中序、后序》文章,图解得蛮清楚的。
实操的时候,递归方式虽然简单,但面试官更喜欢你写出迭代,考你栈的理解。代码也短,就十几行,用while
循环加Stack
,思路是沿左一路压栈,弹栈访问右子树。
你如果平时写 C++或者 C,也可以参考下面两篇:
- C++实现中序遍历(写法类似,逻辑一致)
- 中序遍历+哈夫曼编码(C 语言)(附带进阶内容)
如果你在刷 LeetCode,又正好准备 Java 面试,这份Java 面试-leetcode 题解之第 94 题二叉树的中序遍历.zip
可以先收藏。建议你一边看代码一边自己敲一遍,理解才更深。
1.87KB
文件大小:
评论区