算法(四十五)

1、二叉树遍历(采用中序)
**方法一**
*二叉树节点*
public class Node {
    public Node left;
    public Node right;
    public int val;

    public Node(int data){
        this.val = data;
    }
}
**递归**
public static void inOrderRecursion(Node head){
        if(head == null){
            System.out.println("二叉树为空");
            return;
        }
        if(head.left != null){
            inOrderRecursion(head.left);
        }
        System.out.print(head.val+", ");
        if(head.right != null){
            inOrderRecursion(head.right);
        }
}
**非递归**
public static void inOrderRecursion(Node head){
    if(head==null){
        System.out.println("二叉树为空");
        return;
    }
    Stack<Node> s = new Stack<Node>();
    while(!s.isEmpty()||head!=null){
        if(head!=null){
       

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章