作者:懷捻過呿_649 | 来源:互联网 | 2023-09-23 07:53
用递归遍历先序、中序和后序前序遍历:打印-左-右中序遍历:左-打印-右后序遍历:左-右-打印下一篇文章是迭代的思想:点这里跳转下一篇文章LeetCode#94中序遍历二叉树impo
用递归遍历先序、中序和后序
前序遍历:打印-左-右
中序遍历:左-打印-右
后序遍历:左-右-打印
下一篇文章是迭代的思想:
点这里跳转下一篇文章
LeetCode #94 中序遍历二叉树
import java.util.ArrayList;
import java.util.List;
class Solution_94 {
public List<Integer> inorderTraversal(TreeNode root) {
List<Integer> res = new ArrayList<>();
dfs(res, root);
System.out.println(res);
return res;
}
public void dfs(List<Integer> res, TreeNode root) {
if (root == null) {
return;
}
dfs(res, root.left);
res.add(root.val);
dfs(res, root.right);
}
}
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) {
val = x;
}
}
当然 我这个是比较简单的实现, 一些思路还参照了题解, 大家可以去看题解大佬用的迭代 自己做做