演算法複習 — 二叉樹遍曆

來源:互聯網
上載者:User

遍曆二叉樹的關鍵詞

訪問和順序

前序走訪

//前序走訪 訪問根節點 前序走訪左子樹 再前序走訪右子樹    public void beforeOrder(Node root){        Node current = root;        if(current!=null){            System.out.println(current.value);            inOrder(current.leftNode);            inOrder(current.rightNode);        }    }

 

 

中序遍曆

//中序遍曆    public void inOrder(Node root){        /*根節點作為參數,初始化時這個節點是根。        1 調用自身來遍曆節點的左子樹        2 訪問這個節點        3 調用自身來遍曆節點的右子樹*/        Node current = root;                 if(current!=null){            inOrder(current.leftNode);            System.out.println(current.value);            inOrder(current.rightNode);        }    }

 

後序遍曆

//後序遍曆    public void afterOrder(Node root){        Node current = root;        if(current!=null){//// 從左至右先葉子後節點的方式便利訪問左右子樹 最後訪問根節點            inOrder(current.leftNode);            inOrder(current.rightNode);            System.out.println(current.value);        }    }

小練習

已知一顆二叉樹 求 後序遍曆結果是什嗎?

前序走訪結果:ABCDEF

==> A是根節點

中序遍曆序列:CBAEDF

==> CB是左子樹 EDF是右子樹

如下

 

 

我們再看前序中的C和B,

 

懶得寫了 見 P185 <<大話資料結構>>

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.