已知二叉樹前序、中序遍歷用python求後序遍歷
阿新 • • 發佈:2019-01-10
這裡用到遞迴的方法:
遞迴的關鍵是找到出口和遞迴的狀態(也就是要寫出遞迴第一個完整的過程),這樣計算機才能明白以後的若干步怎麼去走。
當然,實際中遞迴的方法效率不高(不表明它不快),因為要頻繁呼叫函式本身,所以容易爆炸(哈哈哈)。
程式碼:
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))