1. 程式人生 > >已知二叉樹前序、中序遍歷用python求後序遍歷

已知二叉樹前序、中序遍歷用python求後序遍歷

這裡用到遞迴的方法:

遞迴的關鍵是找到出口和遞迴的狀態(也就是要寫出遞迴第一個完整的過程),這樣計算機才能明白以後的若干步怎麼去走。

當然,實際中遞迴的方法效率不高(不表明它不快),因為要頻繁呼叫函式本身,所以容易爆炸(哈哈哈)。

程式碼:

def last_sort(str1, str2):
    if len(str2) <= 1:
        return str2
    else:
        return last_sort(str1[1:str2.index(str1[0])+1], str2[:str2.index(str1[0])]) + last_sort(str1[str2.index(str1[0
])+1:], str2[str2.index(str1[0])+1: ]) + str1[0:1] str1 = ['A', 'B', 'D', 'C', 'E', 'F'] str2 = ['D', 'B', 'A', 'E', 'C', 'F'] print(last_sort(str1, str2))