題目描述
判斷兩序列是否為同一二叉搜尋樹序列
輸入描述:
開始乙個數n,(1<=n<=20) 表示有n個需要判斷,n= 0 的時候輸入結束。
接下去一行是乙個序列,序列長度小於10,包含(0~9)的數字,沒有重複數字,根據這個序列可以構造出一顆二叉搜尋樹。
接下去的n行有n個序列,每個序列格式跟第乙個序列一樣,請判斷這兩個序列是否能組成同一顆二叉搜尋樹。
輸出描述:
如果序列相同則輸出yes,否則輸出no
示例1輸入複製2
567432
543267
5763420輸出
複製yes
no
#include
#include
using
namespace std;
struct tnode};
vector<
int>tmp_pre_sequence,tmp_in_sequence,cur_pre_sequence,
cur_in_sequence;
tnode* _template,
*cur_tree;
string s,cur_s;
bool
judge
(vector<
int>v1,vector<
int>v2)
;void
insert
(tnode*
&t,int data)
;void
pre(tnode*t)
;void
in(tnode*t)
;void
_pre
(tnode*t)
;void
_in(tnode*t)
;void
reset()
;void
_reset()
;void
build
(tnode*
&t,string s)
;int
main()
else cout<<
"no";if
(i1)cout
}void
build
(tnode*
&t,string s)
}void
insert
(tnode*
&t,int data)
void
_pre
(tnode*t)
}void
_in(tnode*t)
}void
pre(tnode*t)
}void
in(tnode*t)
}bool
judge
(vector<
int>v1,vector<
int>v2)
for(
int i=
0;isize()
;i++
)return
true;}
void
reset()
void
_reset()
浙大機試OJ 二叉搜尋樹
判斷兩序列是否為同一二叉搜尋樹序列 開始乙個數n,1 n 20 表示有n個需要判斷,n 0 的時候輸入結束。接下去一行是乙個序列,序列長度小於10,包含 0 9 的數字,沒有重複數字,根據這個序列可以構造出一顆二叉搜尋樹。接下去的n行有n個序列,每個序列格式跟第乙個序列一樣,請判斷這兩個序列是否能組...
王道機試指南 二叉樹與二叉搜尋樹
二叉樹題目鏈結二叉樹 題意 在乙個完全二叉樹中給出乙個子樹的根和樹的最後乙個結點,求其子樹的結點個數。思路 分為三種情況 其中2 3情況均為乙個滿二叉樹,只需要知道其子樹的深度就可以直接算得,而對於第一種情況,需要先計算出其最後一層的結點樹,再加上以上的結點數。如下 include include ...
二叉搜尋樹 二叉搜尋樹
題目 二叉搜尋樹 time limit 2000 1000 ms j a others memory limit 32768 32768 k j a others total submission s 6945 accepted submission s 3077 problem descripti...