LeetCode-144二叉树的前序遍历(Binary Tree Preorder Traversal)

LeetCode-144

Given a binary tree, return the preorder traversal of its nodes’ values.


Example

Input: [1,null,2,3]
  1
    \\
     2
    /
  3
Output: [1,2,3]


Solution

Java
class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) { val = x; }
}
class Solution {
List<Integer> preorder=new ArrayList<Integer>();
public List<Integer> preorderTraversal(TreeNode root) {
if (root==null)
return preorder;
preorder.add(root.val);
preorderTraversal(root.left);
preorderTraversal(root.right);
return preorder;
}
}

题目描述:
给定一个二叉树,返回它的 前序 遍历。

总结:

执行用时1 ms,在所有 Java 提交中击败了98.93%的用户。
内存消耗34.5 MB,在所有 Java 提交中击败了44.52%的用户。

递归先序遍历,根$\rightarrow$左子树$\rightarrow$右子树。
本题之后会用迭代和C语言补充。最近做的都会是树和图的基本算法题。

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×