按資料元素在表中的次序構造一棵二叉查詢樹
二叉排序樹具有如下性質:
(1) 若左子樹不空,則左子樹上所有結點的值均小於或等於它的根結點的值;
(2) 若右子樹不空,則右子樹上所有結點的值均大於或等於它的根結點的值;
(3) 左、右子樹也分別為二叉排序樹.
元素(19.14.22.01.66.21.83.27.56.13.10)構造二叉排序樹的過程如下:
加入19, 這是根結點. 往後但凡數值比19小的都屬於左子樹, 比19大的都屬於右子樹.
加入14, 數值比19小, 作為19的左子樹.
19
/
14
加入22, 數值比19大, 作為19的右子樹.
19
/ \
14 22
加入01, 數值比19, 14都小, 作為14的左子樹.
19
/ \
14 22
/
1
加入66, 數值比19, 22都大, 作為22的右子樹.
19
/ \
14 22
/ \
1 66
加入21, 數值比19大, 比22小, 作為22的左子樹.
19
/ \
14 22
/ / \
1 21 66
加入83, 數值比19, 22, 66都大, 作為66的右子樹.
19
/ \
14 22
/ / \
1 21 66
\
83
加入27, 數值比19, 22都大, 但是比66小, 作為66的左子樹.
19
/ \
14 22
/ / \
1 21 66
/ \
27 83
加入56, 數值比19, 22都大, 比66小, 但是比27大, 作為27的右子樹.
19
/ \
14 22
/ / \
1 21 66
/ \
27 83
\
56
加入13, 數值比19, 14都小, 但是比1大, 作為1的右子樹.
19
/ \
14 22
/ / \
1 21 66
\ / \
13 27 83
\
56
加入10, 數值比19, 14都小, 比1大, 但是比13小, 作為13的左子樹.
19
/ \
14 22
/ / \
1 21 66
\ / \
13 27 83
/ \
10 56
因為二叉樹排序的根結點是19, 27比19大, 所以27肯定排在根結點19的右子樹,
而13比19小, 所以13肯定排在根結點19的左子樹, 故此,13不會是27的左子樹.
根據二叉排序樹的性質, 13是1的右子樹.