先上圖:
二叉樹遍歷分爲三種:前序、中序、後序,其中序遍歷最爲重要。爲啥叫這個名字?是根據根節點的順序命名的。
比如上圖正常的一個滿節點,A:根節點、B:左節點、C:右節點,前序順序是ABC(根節點排最先,然後同級先左後右);中序順序是BAC(先左後根最後右);後序順序是BCA(先左後右最後根)。
來個普通正常的二叉樹:
前序遍歷:ABCDEFGHK
中序遍歷: BDCAEHGKF
後序遍歷:DCBHKGFEA
注大多數排序樹採用中序遍歷。
END。
先上圖:
二叉樹遍歷分爲三種:前序、中序、後序,其中序遍歷最爲重要。爲啥叫這個名字?是根據根節點的順序命名的。
比如上圖正常的一個滿節點,A:根節點、B:左節點、C:右節點,前序順序是ABC(根節點排最先,然後同級先左後右);中序順序是BAC(先左後根最後右);後序順序是BCA(先左後右最後根)。
來個普通正常的二叉樹:
前序遍歷:ABCDEFGHK
中序遍歷: BDCAEHGKF
後序遍歷:DCBHKGFEA
注大多數排序樹採用中序遍歷。
END。
void Print(TreeNode* pRoot) { queue<TreeNode*> que; int cur_count(0); int next_count(0); if (pRoo
翻轉一棵二叉樹。 示例: 輸入: 4 / \ 2 7 / \ / \ 1 3 6 9 輸出: 4 / \ 7 2 / \ / \ 9 6