題目引出的思考:
前面學習中,一般都是需要前序+中序或者后序+中序才能構建出一顆二叉樹,故本道題中一開始並未給出中序遍歷,心中疑惑便出,是否該二叉樹不唯一?再細看是二叉排序樹,仔細分析顯然可得二叉排序樹中的中序遍歷必然是遞增的,故排除自己的錯誤想法。
證明:
如果一棵非空二叉樹(所有結點值均不相同)的中序遍歷序列是從小到大有序 的,則該二叉樹是一棵二叉排序樹。
對於關鍵字為k的任一結點a,由中序遍歷過程可知,在中序遍歷序列中,它的左子樹的所有結點的關鍵字排在k的左邊,它的右子樹的所有結點的關鍵字排在k的右邊, 由於中序序列是從小到大排列的,所以結點a的左子樹中所有結點的關鍵字小於k,結點a的右子樹中所有結點的關鍵字大於k,這滿足二叉排序樹的性質,所以該二叉樹是一棵二叉排序樹。