第(7)题 binary-tree-PReorder-traversal 知识点:树 题述:Given a binary tree, return the preorder traversal of its nodes’ values. For example: Given binary tree{1,#,2,3}, 1 / 2 / 3
return[1,2,3]. 与前一题及其相似,只是用先根法遍历二叉树 思路:先根法要求先根子结点,再两个子结点的顺序遍历二叉树。 代码如下:
/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */import java.util.ArrayList;public class Solution { public ArrayList<Integer> preorderTraversal(TreeNode root) { ArrayList<Integer> list = new ArrayList<Integer>(); preorder(root,list); return list; } public void preorder(TreeNode root, ArrayList list){ if(root == null){ return; } list.add(root.val); if(root.left!=null){ preorder(root.left,list); } if(root.right!=null){ preorder(root.right,list); } }}新闻热点
疑难解答