import java.util.*; class Node{ int data; Node lchild; Node rchild; Node(int a) { data=a; lchild=null; rchild=null; } } public class InOrderTravereseFeidigui{ private static final Stack<Node> Node = null; static Node root=null; static Node creatTree(Node root) { Scanner in=new Scanner(System.in); int a=in.nextInt(); if(a==0){ return null ; } else{ root=new Node(a); root.lchild=creatTree(root.lchild); root.rchild=creatTree(root.rchild); return root; } } static void InOrderTraverseFeidigui(Node root){ Node temp=root; Stack<Node> stack=new Stack<Node>(); while(temp!=null||!stack.isEmpty()){ while(temp!=null){ stack.push(temp); temp=temp.lchild; } Node node=stack.pop(); System.out.print(node.data); temp=node.rchild; } } public static void main(String[] args) { Node tree1=creatTree(root); InOrderTraverseFeidigui(tree1); } }