中序遍历非递归实现(java实现)

来源:互联网 发布:无锡淘宝客服招聘 编辑:程序博客网 时间:2024/06/05 02:09
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);}}

原创粉丝点击