判斷整數序列是不是二元查詢樹的後序遍歷結果

2021-05-23 11:27:22 字數 1038 閱讀 3951

第9題

-----------------------------------

判斷整數序列是不是二元查詢樹的後序遍歷結果

題目:輸入乙個整數陣列,判斷該陣列是不是某二元查詢樹的後序遍歷的結果。

如果是返回true,否則返回false。

例如輸入5、7、6、9、11、10、8,由於這一整數序列是如下樹的後序遍歷結果:

8/ /

6 10

/ / / /

5 7 9 11

因此返回true。

如果輸入7、4、6、5,沒有哪棵樹的後序遍歷的結果是這個序列,因此返回false。

二叉查詢樹(binary search tree),或者是一棵空樹,或者是具有下列性質的二叉樹:

若它的左子樹不空,則左子樹上所有結點的值均小於它的根結點的值;

若它的右子樹不空,則右子樹上所有結點的值均大於它的根結點的值;

它的左、右子樹也分別為二叉排序樹。

c# codes as below:

using

system;

namespace ;

bool result = new

helper().judgetree(array);

console.writeline(); }

} class

helper

for (int i = index; i < array.length - 1; i++)

int leftarray = new

int[index];

int rightarray = new

int[array.length - index - 1];

for (int i = 0; i < index; i++)

for (int i = index; i < array.length - 1; i++)

return judgetree(leftarray) && judgetree(rightarray);}

} }

判斷整數序列是不是二元查詢樹的後序遍歷結果

二叉查詢樹 binary search tree 或者是一棵空樹,或者是具有下列性質的二叉樹 若它的左子樹不空,則左子樹上所有結點的值均小於它的根結點的值 若它的右子樹不空,則右子樹上所有結點的值均大於它的根結點的值 它的左 右子樹也分別為二叉排序樹。post order 先訪問左節點,再訪問右節點...

判斷整數序列是不是二元查詢樹的後序遍歷結果

二叉樹 遍歷 一 題目 感謝 提供的題目 判斷整數序列是不是二元查詢樹的後序遍歷結果 輸入乙個整數陣列,判斷該陣列是不是某二元查詢樹的後序遍歷的結果。如果是返回true,否則返回false。例如 輸入5 7 6 9 11 10 8,由於這一整數序列是如下樹的後序遍歷結果 8 6 10 5 7 9 1...

判斷整數序列是不是二元查詢樹的後序遍歷結果

二元查詢樹的定義為 1 若左子樹不空,則左子樹上所有節點的值均小於其根節點的值。2 若右子樹不空,則右子樹上所有節點的值均小於其跟節點的值 3 其左右子樹也均為二叉查詢樹。那麼先給定乙個數字序列5 7 6 9 11 10 8,判斷這個序列是否是二元查詢樹的後根遍歷。可以回想一下後序遍歷的性質,先訪問...