码迷,mamicode.com
首页 > 其他好文 > 详细

[leetcode] Binary Tree Inorder Traversal

时间:2018-07-11 19:57:19      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:val   先序   style   output   代码   后序遍历   out   tco   return   

Given a binary tree, return the inorder traversal of its nodes‘ values.

Example:

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

Output: [1,3,2]

Follow up: Recursive solution is trivial, could you do it iteratively?


分析:题目比较简单,要求对一个二叉树做中序遍历。emmm,很基础的DFS就可以了。代码如下:
 1 class Solution {
 2     public List<Integer> inorderTraversal(TreeNode root) {
 3         List<Integer> list = new ArrayList<>();
 4         helper(list,root);
 5         return list;
 6     }
 7     private void helper(List<Integer> list, TreeNode root) {
 8         if ( root == null ) return;
 9         helper(list,root.left);
10         list.add(root.val);
11         helper(list,root.right);
12     }
13 }

      运行时间0ms,哇,第一个0ms成就达成!

      关于二叉树的先序、中序、后序遍历,只要改一下第10行代码的位置就可以了。先序就放到最前面,中序就放到中间,后序就放到最后面。其他的也没啥要注意的了。

[leetcode] Binary Tree Inorder Traversal

标签:val   先序   style   output   代码   后序遍历   out   tco   return   

原文地址:https://www.cnblogs.com/boris1221/p/9295885.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!