国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實現輸入二叉樹的先序和中序遍歷,再輸出后序遍歷操作示

2020-02-15 22:34:25
字體:
來源:轉載
供稿:網友

本文實例講述了Python實現輸入二叉樹的先序和中序遍歷,再輸出后序遍歷操作。分享給大家供大家參考,具體如下:

實現一個功能:

    輸入:一顆二叉樹的先序和中序遍歷
    輸出:后續遍歷

思想:

先序遍歷中,第一個元素是樹根
    在中序遍歷中找到樹根,左邊的是左子樹 右邊的是右子樹

Python代碼:

# -*- coding:utf-8 -*-def fromFMtoL( mid ):  global las #全局后序遍歷  global fir #先序遍歷  root = fir[0]  #取出當前樹根  fir = fir[1:]  #取出樹根后 先序遍歷把根拿出來 下面一個元素做樹根  root_po = mid.find( root ) #在中序遍歷當中樹根的位置  left = mid[0:root_po]  #左子樹  right = mid[root_po+1:len(mid)] #右子樹  '''  后序遍歷: 左 右 根   先左子樹 再右子樹 最后跟  '''  #有左子樹的時候  if len(left) > 0:    fromFMtoL( left )  #有右子樹的時候  if len(right) > 0:    fromFMtoL( right )  #樹根寫進結果  las += rootif __name__ == "__main__" :  # fir = input("請輸入先序遍歷:")   #前序遍歷的結果  # mid = input("請輸入中序遍歷:")   #中序遍歷的結果  fir = "DBACEGF"  mid = "ABCDEFG"  # fir = "ABC"  # mid = "BAC"  las = ""  fromFMtoL( mid )  print(las)

運行結果:

ACBFGED

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python編碼操作技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长顺县| 安仁县| 阿巴嘎旗| 济宁市| 金昌市| 胶州市| 于田县| 新疆| 安塞县| 兴仁县| 修武县| 高安市| 连江县| 蓬安县| 中山市| 耿马| 平度市| 乌海市| 天津市| 东乌珠穆沁旗| 高台县| 桓仁| 札达县| 池州市| 长武县| 佛冈县| 九龙坡区| 永济市| 略阳县| 龙游县| 靖远县| 弥勒县| 忻州市| 西吉县| 鸡东县| 青铜峡市| 定陶县| 永平县| 龙胜| 临城县| 卢氏县|