學習的時間愈來愈長總會忘掉一些東西,就好比向量,矩陣,二叉樹,鄰接表,太多太多東西,不用就都給忘了,今天看了這樣一道面試題:總結下來就是根據二叉樹的前中序遍歷,而後寫出後序遍歷,清晰的記得當時學習二叉樹的時候作這種題是很快的,但是我還真就卡住了,不是說須要作一下子,是作不出來,看過好多遍使用程序實現DFS(深度優先)BFS(廣度優先)的例子,但是讓我用筆推斷,我還真就腦子瓦特了,因此也記錄一下,順便幫一下也忘記了手工推斷的大家回憶一下,大家必定都比我優秀,perfect。面試
前序遍歷學習
中序遍歷spa
這些遍歷就是根據遍歷根節點的順序而定義的,前序遍歷就是優先遍歷根節點而後遍歷左右子節點,固然左右子節點也是根據這個原則遍歷的,那麼中後序遍歷也同樣。那麼咱們應該怎麼去作呢?其實就是根據前中遍歷的結果推斷出這顆樹。。。blog
第一步ip
根據根節點A和中序遍歷劃分前中序遍歷的左右子樹,以中左表示,前序遍歷的左右子樹,之前左表示:it
第二步class
第三步cli
第四步二叉樹
終於構建出來這顆樹了,接下來根據後序遍歷原則去寫:遍歷
後序遍歷結果亮相:
只有多學習才能變得更強,仍是那句話:
堅持一件事,對本身。