二叉搜尋樹的實現(參考 《挑戰程式設計競賽》)

2022-05-03 19:57:12 字數 565 閱讀 5424

//

二叉搜尋樹的實現

////

使用 node *root =null;

root = insert(root, 1

);find(root,

1);

//實現

struct node//

表示節點的結構體

;node *insert(node *p, int x)//

插入數值x

else

}bool find(node *p, int x)//

查詢數值x

node *remove(node *p, int x)//

刪除數值x

else

if(p->lch->rch == null)//

刪除的節點的左兒子沒有右兒子

else

//以上兩種情況都不滿足的話, 就把左兒子的子孫中最大的節點提到需要刪除的節點上

return

p;}

刪除的最後一部分的**相對較難理解, 得反覆琢磨。

覺得有幫助的話不妨點個推薦呀!

二叉搜尋樹 二叉搜尋樹

題目 二叉搜尋樹 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...

二叉搜尋樹的實現

binarysearchtree.h inte ce for the binarysearchtree class.include binarytreenode.h include binarytree1.h if defined afx binarysearchtree h 1cd2ff9d 73...

二叉搜尋樹的實現

includeusing namespace std 二叉搜尋樹左兒子的值比當前節點小,右兒子的數值比當前節點大 struct node 建立樹 node insert node p,int x else return p 查詢 bool find node p,int x else return ...