【LeetCode】94.Binary Tree Inorder Traversal(Medium)解题报告
2018-03-17 09:54
537 查看
【LeetCode】94.Binary Tree Inorder Traversal(Medium)解题报告
题目地址:https://leetcode.com/problems/binary-tree-level-order-traversal-ii/description/
题目描述:
Given a binary tree, return the inorder traversal of its nodes’ values.
Solution1:
Solution2:
Date:2018年3月17日
题目地址:https://leetcode.com/problems/binary-tree-level-order-traversal-ii/description/
题目描述:
Given a binary tree, return the inorder traversal of its nodes’ values.
For example: Given binary tree [1,null,2,3], 1 \ 2 / 3 return [1,3,2]. Note: Recursive solution is trivial, could you do it iteratively?
Solution1:
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } 二叉树的中序遍历:左根右 time : O(n) space : O(n) 递归形式和 */ class Solution { public List<Integer> inorderTraversal(TreeNode root) { List<Integer> res = new ArrayList<>(); if(root == null) return res; helper(res,root); return res; } public static void helper(List<Integer> res,TreeNode root){ if(root == null) return; helper(res,root.left); res.add(root.val); helper(res,root.right); } }
Solution2:
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } 二叉树的中序遍历:左根右 time : O(n) space : O(n) 递归形式和迭代stack */ class Solution { public List<Integer> inorderTraversal(TreeNode root) { List<Integer> res = new ArrayList<>(); if(root == null) return res; Stack<TreeNode> stack = new Stack<>(); TreeNode cur = root; while(cur != null || !stack.isEmpty()){ while(cur != null){ stack.push(cur); cur = cur.left; } cur = stack.pop(); res.add(cur.val); cur = cur.right; } return res; } }
Date:2018年3月17日
相关文章推荐
- 【LeetCode】377.Combination Sum IV(Medium)解题报告
- LeetCode解题报告 394. Decode String [medium]
- 【LeetCode】253.Meeting Rooms II(Medium)解题报告
- 【LeetCode】646.Maximum Length of Pair Chain(Medium)解题报告
- 【LeetCode】144. Binary Tree Preorder Traversal(Medium)解题报告
- 【LeetCode】267.Palindrome Permutation II(Medium)解题报告
- LeetCode解题报告 445. Add Two Numbers II [medium]
- 【LeetCode】309.Best Time to Buy and Sell Stock with Cooldown(Medium)解题报告
- LeetCode解题报告 55. Jump Game [medium]
- 【LeetCode】337.House Robber III(Medium)解题报告
- LeetCode解题报告 279. Perfect Squares [medium]
- LeetCode解题报告 357. Count Numbers with Unique Digits [medium]
- 【LeetCode】56.Merge Intervals(Medium)解题报告
- 【LeetCode】163.Missing Ranges(Medium)(带锁题)解题报告
- 【LeetCode】623.Add One Row to Tree(Medium)解题报告
- LeetCode解题报告 338. Counting Bits [medium]
- 【LeetCode】513.Find Bottom Left Tree Value(Medium)解题报告
- 【LeetCode】78.Subsets(Medium)解题报告
- 【LeetCode】109.Convert Sorted List to Binary Search Tree(Medium)解题报告
- LeetCode解题报告 406. Queue Reconstruction by Height [medium]