description
根據給定的輸入序列建立一棵平衡二叉樹,求出建立的平衡二叉樹的樹根。
input
輸入一組測試資料。資料的第1行給出乙個正整數n(n <= 20),n表示輸入序列的元素個數;第2行給出n個正整數,按資料給定順序建立平衡二叉樹。
output
輸出平衡二叉樹的樹根。
sample
input
5
8870
6196
120
output
70
hint
平衡二叉樹詳解
#include
using
namespace std;
typedef
struct node
tree;
intgeth
(tree *root)
return de;
}tree *
ll(tree *root)
tree *
rr(tree *root)
tree *
lr(tree *root)
tree *
rl(tree *root)
tree *
create
(tree *root,
int k)
elseif(
geth
(root-
>l)
-geth
(root-
>r)
>=2)
if(geth
(root-
>r)
-geth
(root-
>l)
>=2)
return root;
}int
main()
cout << root-
>data << endl;
return0;
}
B 資料結構實驗之查詢二 平衡二叉樹
根據給定的輸入序列建立一棵平衡二叉樹,求出建立的平衡二叉樹的樹根。輸入一組測試資料。資料的第1行給出乙個正整數n n 20 n表示輸入序列的元素個數 第2行給出n個正整數,按資料給定順序建立平衡二叉樹。輸出平衡二叉樹的樹根。input 588 70 61 96 120 output 70 inclu...
資料結構實驗之查詢二 平衡二叉樹
建立平衡二叉樹,我們採用依次插入節點的方式進行。而平衡二叉樹上插入節點採用遞迴的方式進行。遞迴演算法如下 1 若該樹為一空樹,那麼插入乙個資料元素為e的新節點作為平衡二叉樹的根節點,樹的高度增加1。2 若待插入的資料元素e和平衡二叉樹 bbst 的根節點的關鍵字相等,那麼就不需要進行插入操作。3 若...
資料結構實驗之查詢二 平衡二叉樹
time limit 400ms memory limit 65536k 根據給定的輸入序列建立一棵平衡二叉樹,求出建立的平衡二叉樹的樹根。輸入一組測試資料。資料的第1行給出乙個正整數n n 20 n表示輸入序列的元素個數 第2行給出n個正整數,按資料給定順序建立平衡二叉樹。輸出平衡二叉樹的樹根。5...