94.Binary Tree Inorder Traversal
来源:互联网 发布:萧山网络问政南阳 编辑:程序博客网 时间:2024/05/22 15:46
题目链接:binary-tree-inorder-traversal
/** * Given a binary tree, return the inorder traversal of its nodes' values.For example:Given binary tree {1,#,2,3}, 1 \ 2 / 3return [1,3,2].Note: Recursive solution is trivial, could you do it iteratively?confused what "{1,#,2,3}" means? > read more on how binary tree is serialized on OJ.OJ's Binary Tree Serialization:The serialization of a binary tree follows a level order traversal, where '#' signifies a path terminator where no node exists below.Here's an example: 1 / \ 2 3 / 4 \ 5The above binary tree is serialized as "{1,2,3,#,#,4,#,#,5}". * */public class BinaryTreeInorderTraversal {public class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int x) {val = x;}}//67 / 67 test cases passed.//Status: Accepted//Runtime: 216 ms//Submitted: 1 minute ago//简单的中序遍历//递归版 public List<Integer> inorderTraversal(TreeNode root) { List<Integer> inorder= new ArrayList<Integer>(); inorderTraversal(root, inorder); return inorder; } public void inorderTraversal(TreeNode root, List<Integer> inorder) { if (root != null) { inorderTraversal(root.left, inorder); inorder.add(root.val); inorderTraversal(root.right, inorder); } } //遍历版 public List<Integer> inorderTraversal1(TreeNode root) { List<Integer> inorder= new ArrayList<Integer>(); Stack<TreeNode> stack = new Stack<TreeNode>(); TreeNode p = root; while(!stack.isEmpty() || p != null) { if(p != null) { stack.add(p); p = p.left; } else { TreeNode node = stack.pop(); inorder.add(node.val); p = node.right;} } return inorder; } public static void main(String[] args) {// TODO Auto-generated method stub}}
0 0
- 94. Binary Tree Inorder Traversal
- 94.Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94.Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 94. Binary Tree Inorder Traversal
- 三层交换机和路由器的主要区别
- fuseki在windows的简单配置
- HDU Caocao's Bridges
- fine_short_path
- 关于利用live555,RTSP取流
- 94.Binary Tree Inorder Traversal
- MySQL 5.7 Fabric: any good?
- 解决eclipse中org.w3c.dom.Node类老报The method getTextContent() is undefined 问题
- 数据库的设计原则
- 【leetcode】 Maximum Gap
- 黑马程序员--OC-内存
- 变量、初始化块和构造方法的初始化顺序问题(笔试题)
- x264使用示例 /** * @note x264的编码示例. * 使用x264的 (2013-07-03 10:40:12)
- C++之“友元类”学习笔记