本題要求實現二叉排序樹的查詢操作。
函式介面定義:
bstree searchbst
(bstree t,elemtype e)
;
其中bstree結構定義如下:
typedef
int elemtype;
typedef
struct bstnode
bstnode,
*bstree;
裁判測試程式樣例:
#include
#include
typedef
int elemtype;
typedef
struct bstnode
bstnode,
*bstree;
bstree createbst()
;/* 二叉排序樹建立,由裁判實現,細節不表 */
bstree searchbst
(bstree t,elemtype e)
;void
inorder
(bstree t)
;/* 中序遍歷,由裁判實現,細節不表 */
intmain()
return0;
}/* 你的**將被嵌在這裡 */
對於建立好的二叉排序樹,如下圖:
略輸入樣例:
418
09
輸出樣例:
inorder:12
3456
781 is found
8 is found
0 is not found
9 is not found
下面是本題**
bstree searchbst
(bstree t,elemtype e)
二叉排序樹查詢操作
當函式返回值為函式結果狀態 時,函式定義為status型別。遞迴查詢二叉排序樹t中是否存在key 指標 f 指向 t 的雙親,其初始呼叫值為null 若查詢成功,則指標p指向該資料元素結點,並返回true includetypedef struct bitnode bitnode,bitree bo...
查詢 二叉排序樹
順序查詢 順序查詢又叫線性查詢,是最基本的查詢技術,它的查詢過程是 從表中第乙個記錄開始,逐個進行記錄的關鍵字和給定值比較,若某個記錄的關鍵字和給定值相等,則查詢成功,找到所查的記錄 如果知道最後乙個記錄,其關鍵字和給定值比較都不等時,則表中沒有所查的記錄,查詢不成功。順序查詢演算法實現 如下 順序...
查詢 二叉排序樹
動態查詢表 表結構本身是在查詢過程中動態生成的,即對於給定值key,若表中存在其關鍵值等於key的記錄,則查詢成功返回,否則插入關鍵字等於key的記錄。二叉排序樹或者是一顆空樹,或者是具有下列性質的二叉樹 1 若他的左子樹不為空,則左子樹上所有結點的值均小於它的根結點的值。2 若它的右子樹不空,則右...