五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

DFA實現(xiàn)迭代遍歷二叉樹(前、中、后)

2022-11-28 23:35 作者:L__B_  | 我要投稿

狀態(tài)機過程詳解

我們定義三個狀態(tài):

  1. LEFT狀態(tài):代表左右子樹均未被遍歷

  2. RIGHT狀態(tài):代表左子樹被遍歷

  3. UP狀態(tài):代表左右子樹都被遍歷過

注意還需要一個棧用于存儲遍歷路徑,方便拿取父節(jié)點。

  • 實現(xiàn)了這個迭代過程后,我們發(fā)現(xiàn),實際上LEFT狀態(tài)就是前序遍歷的操作狀態(tài),RIGHT狀態(tài)就是中序遍歷的操作狀態(tài),UP狀態(tài)就是后序遍歷的操作狀態(tài),自此用迭代實現(xiàn)了遞歸的完全模擬。

畫出狀態(tài)轉(zhuǎn)移圖

狀態(tài)轉(zhuǎn)移

(前序遍歷代碼)代碼

這里只展示前序遍歷的代碼,中序和后序也很簡單,直接在對應(yīng)的狀態(tài)取數(shù)值即可。

驗證代碼可以到leetcode平臺:https://leetcode.cn/problems/binary-tree-preorder-traversal/submissions


DFA實現(xiàn)迭代遍歷二叉樹(前、中、后)的評論 (共 條)

分享到微博請遵守國家法律
建始县| 克拉玛依市| 克什克腾旗| 宝坻区| 鄯善县| 萝北县| 库尔勒市| 年辖:市辖区| 五常市| 湖州市| 塘沽区| 曲麻莱县| 武陟县| 大足县| 延长县| 金沙县| 华宁县| 新建县| 通山县| 遵化市| 栖霞市| 泰宁县| 龙陵县| 阳春市| 武胜县| 绥芬河市| 本溪市| 垫江县| 阳东县| 淮南市| 博兴县| 河南省| 罗田县| 大渡口区| 永仁县| 吴堡县| 莫力| 乌什县| 讷河市| 外汇| 定远县|