最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實(shí)現(xiàn)輸入二叉樹的先序和中序遍歷,再輸出后序遍歷操作示例

 更新時(shí)間:2018年07月27日 12:07:49   作者:稀里糊涂林老冷  
這篇文章主要介紹了Python實(shí)現(xiàn)輸入二叉樹的先序和中序遍歷,再輸出后序遍歷操作,涉及Python基于先序遍歷和中序遍歷構(gòu)造二叉樹,再后序遍歷輸出相關(guān)操作技巧,需要的朋友可以參考下

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

實(shí)現(xiàn)一個(gè)功能:

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

思想:

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

Python代碼:

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

運(yùn)行結(jié)果:

ACBFGED

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Django中template for如何使用方法

    Django中template for如何使用方法

    這篇文章主要介紹了Django中template for如何使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • pycharm代碼刪除恢復(fù)的方法

    pycharm代碼刪除恢復(fù)的方法

    pycharm是一個(gè)很強(qiáng)大的編輯工具,很多朋友在使用過(guò)程中容易產(chǎn)生誤操作,那么一不小心刪除了,怎么恢復(fù)呢,今天就給大家介紹pycharm代碼刪除恢復(fù)教程,需要的朋友參考下吧
    2021-06-06
  • python通過(guò)socket查詢whois的方法

    python通過(guò)socket查詢whois的方法

    這篇文章主要介紹了python通過(guò)socket查詢whois的方法,涉及Python基于socket模塊進(jìn)行查詢的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • 在Python中采集Prometheus數(shù)據(jù)的詳細(xì)用法教程

    在Python中采集Prometheus數(shù)據(jù)的詳細(xì)用法教程

    Prometheus是一個(gè)開源的監(jiān)控和警報(bào)工具,專門用于記錄和查詢時(shí)間序列數(shù)據(jù),它提供了一個(gè)強(qiáng)大的查詢語(yǔ)言PromQL(Prometheus Query Language),允許用戶根據(jù)不同的標(biāo)簽和指標(biāo)選擇特定的時(shí)間序列數(shù)據(jù),本文將詳細(xì)介紹如何在Python中采集Prometheus數(shù)據(jù)
    2024-07-07
  • Python實(shí)現(xiàn)修改圖片分辨率(附代碼)

    Python實(shí)現(xiàn)修改圖片分辨率(附代碼)

    這篇文章主要介紹了Python通過(guò)ffmpeg實(shí)現(xiàn)修改圖片分辨率,文中的代碼介紹詳細(xì),對(duì)我們的工作或?qū)W習(xí)有一定的價(jià)值,感興趣的小伙伴可以學(xué)習(xí)一下
    2021-12-12
  • PyQt5每天必學(xué)之進(jìn)度條效果

    PyQt5每天必學(xué)之進(jìn)度條效果

    這篇文章主要為大家詳細(xì)介紹了PyQt5實(shí)現(xiàn)進(jìn)度條效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python抓取最新博客內(nèi)容并生成Rss

    python抓取最新博客內(nèi)容并生成Rss

    本文給大家分享的是使用python抓取最新博客內(nèi)容并生成Rss的代碼,主要用到了PyRSS2Gen方法,非常的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。
    2015-05-05
  • Python完美還原超級(jí)瑪麗游戲附代碼與視頻

    Python完美還原超級(jí)瑪麗游戲附代碼與視頻

    讀萬(wàn)卷書不如行萬(wàn)里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Python實(shí)現(xiàn)超級(jí)瑪麗,90后的回憶老游戲,快來(lái)看戴帽子的大胡子穿著背帶褲的馬里奧
    2021-11-11
  • 簡(jiǎn)單介紹Python的輕便web框架Bottle

    簡(jiǎn)單介紹Python的輕便web框架Bottle

    這篇文章主要介紹了Python的輕便web框架Bottle,因其注重輕便的設(shè)計(jì),與Flask一樣,Bottle框架的人氣同樣也非常高,需要的朋友可以參考下
    2015-04-04
  • python利用logging模塊實(shí)現(xiàn)根據(jù)日志級(jí)別打印不同顏色日志的代碼案例

    python利用logging模塊實(shí)現(xiàn)根據(jù)日志級(jí)別打印不同顏色日志的代碼案例

    這篇文章主要介紹了python利用logging模塊實(shí)現(xiàn)根據(jù)日志級(jí)別打印不同顏色日志,本文通過(guò)實(shí)例代碼給大家詳細(xì)講解,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-12-12

最新評(píng)論

伊金霍洛旗| 廊坊市| 仁怀市| 吴堡县| 格尔木市| 屏东县| 辽宁省| 兰西县| 沙河市| 山丹县| 涟水县| 洱源县| 梅河口市| 西乌珠穆沁旗| 西和县| 绩溪县| 长武县| 乌兰浩特市| 宜州市| 刚察县| 西城区| 沙湾县| 吐鲁番市| 扎赉特旗| 建宁县| 扶绥县| 洛宁县| 莫力| 花莲市| 柳林县| 杭锦后旗| 孟村| 邛崃市| 临颍县| 北海市| 新邵县| 中方县| 新乐市| 竹溪县| 布尔津县| 朝阳市|