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

首頁 > 編程 > Python > 正文

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

2020-01-04 14:47:57
字體:
來源:轉載
供稿:網友

本文實例講述了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教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巴塘县| 利津县| 泾川县| 文山县| 广水市| 灌南县| 乐业县| 阳信县| 清原| 阳信县| 湘潭市| 定安县| 尼玛县| 北宁市| 永川市| 昆山市| 勃利县| 喀喇沁旗| 嘉荫县| 肃南| 通渭县| 湘潭市| 玉田县| 新丰县| 新竹市| 镇江市| 日照市| 贡山| 进贤县| 工布江达县| 临江市| 库伦旗| 怀来县| 游戏| 布尔津县| 南木林县| 岱山县| 伊金霍洛旗| 广平县| 永定县| 怀集县|