二叉搜尋樹C 版

2021-08-22 16:24:53 字數 729 閱讀 8157

#include using namespace std;

class btnode

};class bstree

//查詢結點

btnode* search(int data, btnode*& parent)

else

} return nullptr;

} //插入結點

void insert(int data)

} }//中序遍歷,二叉搜尋樹的中序遍歷是乙個有序序列

void inorder(btnode*& root)

} void del(int data)

cur->data = p->data;

cur = p;//此時cur指向要刪除的結點,此結點至多有乙個孩子

parent = pp;

}btnode* child = nullptr;//儲存當前結點的孩子結點

if(cur->lchild)

child = cur->lchild;

else

child = cur->rchild;

if(cur==root)

root = child;

else

delete cur;

} }

};int main()

// else

return 0;

}

二叉搜尋樹c 版

include using namespace std const int max 1000 typedef struct node node,tree tree build tree tree,int x else if tree data x tree left build tree left,...

二叉搜尋樹 二叉搜尋樹

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

二叉搜尋樹c 二叉搜尋樹的遍歷

可以總結出三條性質 1 非空左子樹的所有鍵值小於根節點的鍵值。2 非空右子樹的所有鍵值大於根節點的鍵值。3 左右子樹都是二叉搜尋樹。他的遍歷有三種形式 先序遍歷 中序遍歷 後序遍歷。1 先序遍歷 根節點 左子樹 右子樹 首先訪問根節點,然後遍歷左子樹,最後右子樹。並且自遍歷左右子樹時,仍然先訪問根節...