Leetcode--144. 二叉树的前序遍历(迭代&&递归)
发布日期:2021-04-30 21:06:03 浏览次数:118 分类:精选文章

本文共 1549 字,大约阅读时间需要 5 分钟。

??????????????????????????????????????????????????????

????

??????????????????????????????????????????????????????????????????????????????

import java.util.ArrayList;
import java.util.List;
public class Solution {
public List
preorderTraversal(TreeNode root) {
List
result = new ArrayList<>();
return fun(root, result);
}
private static void fun(TreeNode root, List
list) {
if (root == null) {
return;
}
list.add(root.val);
if (root.left != null) {
fun(root.left, list);
}
if (root.right != null) {
fun(root.right, list);
}
}
}

????

???????????????????????????????????????????????????????????????????????????????????????????????????????

import java.util.Stack;
import java.util.List;
import java.util.ArrayList;
public class Solution {
public List
preorderTraversal(TreeNode root) {
List
result = new ArrayList<>();
Stack
stack = new Stack<>();
if (root == null) {
return result;
}
while (!stack.isEmpty() || root != null) {
if (root != null) {
result.add(root.val);
stack.add(root);
root = root.left;
} else {
root = stack.pop();
root = root.right;
}
}
return result;
}
}

??

?????????????????????????????????????????????????????????????????????????

上一篇:网站的颜色搭配
下一篇:git版本控制

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2026年05月26日 23时39分02秒