* public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ import java.util.List; import java.util.ArrayList; import java.util.Stack; public class Solution { // 非递归 public List<Integer> inorderTraversal(TreeNode root) { ...
非递归代码如下: 1publicArrayList<Integer> inorderTraversal(TreeNode root) { 2ArrayList<Integer> res =newArrayList<Integer>(); 3if(root ==null) 4returnres; 5LinkedList<TreeNode> stack =newLinkedList<TreeNode>(); 6while(root!=null|| !stack.isEmpty()){ 7if(root!=null){ 8stack.push(root...
Binary Tree Inorder Traversal 二叉树的中序遍历(Medium)(JAVA) 【LeetCode】 94. Binary Tree Inorder Traversal 二叉树的中序遍历(Medium)(JAVA) 题目地址: https://leetcode.com/problems/binary-tree-inorder-traversal/ 【LeetCode】 144. Binary Tree Preorder Traversal 二叉树的前序遍历(Medium)(J....
import java.util.LinkedList; public class BinaryTreeLevelOrder { public static class TreeNode { int data; TreeNode left; TreeNode right; TreeNode(int data) { this.data=data; } } // prints in level order public static void levelOrderTraversal(TreeNode startNode) { Queue<TreeNode> queue=ne...
The inOrder traversal is one of the most popular ways to traverse a binary tree data structure in Java. TheinOrdertraversal is one of the three most popular ways to traverse a binary tree data structure, the other two being thepreOrderandpostOrder. During the in-order traversal algorithm, ...
Given the root of a binary tree, return the inorder traversal of its nodes' values. Example 1: Input: root = [1,null,2,3] Output: [1,3,2] Example 2: Input: root = [] Output: [] Example 3: Input: root = [1] Output: [1] Constraints: The number of nodes in the tree is...
publicList<Integer>inorderTraversal3(TreeNoderoot){List<Integer>ans=newArrayList<>();TreeNodecur=root;while(cur!=null){//情况 1if(cur.left==null){ans.add(cur.val);cur=cur.right;}else{//找左子树最右边的节点TreeNodepre=cur.left;while(pre.right!=null&&pre.right!=cur){pre=pre.right;}...
Given preorder and inorder traversal of a tree, construct the binary tree. 二分法 复杂度 时间O(N^2) 空间 O(N) 思路 我们先考察先序遍历序列和中序遍历序列的特点。对于先序遍历序列,根在最前面,后面部分存在一个分割点,前半部分是根的左子树,后半部分是根的右子树。对于中序遍历序列,根在中间部分...
Binary Tree Level Order Traversal Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level). For example: Given binary tree [3,9,20,null,null,15,7], 代码语言:javascript ...
importjava.util.ArrayList;importjava.util.List;/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */publicclassSolution{public List<Integer>inorderTraversal(TreeNode root){ArrayList<...