本文實例講述了Python實現(xiàn)輸入二叉樹的先序和中序遍歷,再輸出后序遍歷操作。分享給大家供大家參考,具體如下:
創(chuàng)新互聯(lián)建站為企業(yè)提供:成都品牌網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、微信小程序定制開發(fā)、營銷型網(wǎng)站建設(shè)和網(wǎng)站運營托管,一站式網(wǎng)絡(luò)營銷整體服務(wù)。實現(xiàn)不斷獲取潛在客戶之核心目標,建立了企業(yè)專屬的“全網(wǎng)營銷推廣”,就用不著再為了獲取潛在客戶而苦惱,相反,客戶會主動找您,生意就找上門來了!實現(xiàn)一個功能:
輸入:一顆二叉樹的先序和中序遍歷
輸出:后續(xù)遍歷
思想:
先序遍歷中,第一個元素是樹根
在中序遍歷中找到樹根,左邊的是左子樹 右邊的是右子樹
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 ) #樹根寫進結(jié)果 las += root if __name__ == "__main__" : # fir = input("請輸入先序遍歷:") #前序遍歷的結(jié)果 # mid = input("請輸入中序遍歷:") #中序遍歷的結(jié)果 fir = "DBACEGF" mid = "ABCDEFG" # fir = "ABC" # mid = "BAC" las = "" fromFMtoL( mid ) print(las)
文章標題:Python實現(xiàn)輸入二叉樹的先序和中序遍歷,再輸出后序遍歷操作示例-創(chuàng)新互聯(lián)
新聞來源:http://m.rwnh.cn/article8/ephop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)頁設(shè)計公司、響應(yīng)式網(wǎng)站、自適應(yīng)網(wǎng)站、Google、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容