codeup27899 擴充套件二叉樹

2021-08-26 23:22:32 字數 676 閱讀 3257

時空限制    1000ms/128mb

由於先序、中序和後序序列中的任乙個都不能唯一確定一棵二叉樹,所以對二叉樹做如下處理,將二叉樹的空結點用·補齊,如圖所示。我們把這樣處理後的二叉樹稱為原二叉樹的擴充套件二叉樹,擴充套件二叉樹的先序和後序序列能唯一確定其二叉樹。

現給出擴充套件二叉樹的先序序列,要求輸出其中序和後序序列。

一行字串為擴充套件二叉樹的先序序列,第個結點用乙個字元表示。

兩行,第一行為原二叉樹的中序序列,第二行為原二叉樹的後序序列。

abd..ef..g..c..
dbfegac

dfgebca

注意:雖然題中二叉樹結點不多(只有哪麼多單一字元),但並沒有說明二叉樹的深度,因此不能用一維陣列順序儲存建樹,用靜態二叉鍊錶儲存。

#include#includeusing namespace std;

struct node;

string s;

int i=-1;

node *create()

return root;

}void midord(node *root)

}void lastord(node *root)

}int main()

Codeup二叉查詢樹 二叉搜尋樹

判斷兩序列是否為同一二叉搜尋樹序列 開始乙個數n,1 n 20 表示有n個需要判斷,n 0 的時候輸入結束。接下去一行是乙個序列,序列長度小於10,包含 0 9 的數字,沒有重複數字,根據這個序列可以構造出一顆二叉搜尋樹。接下去的n行有n個序列,每個序列格式跟第乙個序列一樣,請判斷這兩個序列是否能組...

Codeup二叉查詢樹 二叉排序樹

輸入一系列整數,建立二叉排序數,並進行前序,中序,後序遍歷。輸入第一行包括乙個整數n 1 n 100 接下來的一行包括n個整數。可能有多組測試資料,對於每組資料,將題目所給資料建立乙個二叉排序樹,並對二叉排序樹進行前序 中序和後序遍歷。每種遍歷結果輸出一行。每行最後乙個資料之後有乙個空格。12 2 ...

擴充套件二叉樹

由於先序 中序和後序序列中的任乙個都不能唯一確定一棵二叉樹,所以對二叉樹做如下處理,將二叉樹的空結點用 補齊,我們把這樣處理後的二叉樹稱為原二叉樹的擴充套件二叉樹,擴充套件二叉樹的先序和後序序列能唯一確定其二叉樹。現給出擴充套件二叉樹的先序序列,要求輸出其中序和後序序列。輸入有多組資料,對於每組資料...