zoukankan      html  css  js  c++  java
  • 二叉树中序非递归遍历

    package com.basic.bt;
    
    import java.util.ArrayList;
    import java.util.Stack;
    
    /**
     * Created by mac on 2017/1/19.
     */
    public class InOrderBT {
    
        ArrayList<Integer> result = new ArrayList<Integer>();
        ArrayList<Integer> traversal = new ArrayList<Integer>();
    
    
        public void inorder(TreeNode root) {
    
            if(root == null) {
                return;
            }
            inorder(root.left);
            result.add(root.val);
            inorder(root.right);
        }
    
        public void inorderTraversal(TreeNode root) {
            if(root == null)
            {
                return;
            }
            Stack<TreeNode> stack = new Stack<TreeNode>();
            while(root != null || !stack.isEmpty())
            {
                while(root != null) {
                stack.push(root);
                root = root.left;
                }
                TreeNode tmp = stack.peek();
                traversal.add(tmp.val);
                stack.pop();
                root = tmp.right;
            }
        }
    
        public  static void main(String[] args) {
            InOrderBT in = new InOrderBT();
            TreeNode root = new TreeNode(0);
            TreeNode node1 = new TreeNode(1);
            TreeNode node2 = new TreeNode(2);
            TreeNode node3 = new TreeNode(3);
            TreeNode node4 = new TreeNode(4);
    
            root.left = node1;
            root.right = node2;
            node1.left = node3;
            node1.right =node4;
    
            in.inorderTraversal(root);
    
            for(int i = 0; i < in.traversal.size(); i++) {
                System.out.println(in.traversal.get(i));
            }
    
        }
    }
    

      

  • 相关阅读:
    随机二分图
    城市旅行
    JZPKIL
    线性基专题总结
    杜教筛专题总结
    [NOI2018]你的名字
    P1120 小木棍 [数据加强版]
    先序遍历
    P1736 创意吃鱼法
    P2258 子矩阵
  • 原文地址:https://www.cnblogs.com/superzhaochao/p/6323711.html
Copyright © 2011-2022 走看看