题解 | #二叉树的前序遍历#
二叉树的前序遍历
https://www.nowcoder.com/practice/5e2135f4d2b14eb8a5b06fab4c938635
import java.util.*; public class Solution { public int[] preorderTraversal (TreeNode root) { if (root == null){ return new int[0]; } List<Integer> ll = new ArrayList<>(); TreeNode tn = root; ll.add(tn.val); if (root.left != null) { tn = root.left; int[] left = preorderTraversal(tn); for (int j = 0; j < left.length; j++){ ll.add(left[j]); } } if (root.right != null) { tn = root.right; int[] right = preorderTraversal(tn); for (int j = 0; j < right.length; j++) ll.add(right[j]); } int[] result = new int[ll.size()]; for (int i = 0; i < ll.size(); i++) { result[i] = ll.get(i); } return result; } }