Our Blog

Добавление нового элемента в бинарное дерево поиска

Пример демонстрирует, каким образом можно добавить новый элемент в бинарное дерево поиска.
Добавление нового элемента в бинарное дерево поиска:

01.void add (Node* &root, int inf1, char* name) {
02.Node* n=new Node;
03.n->left=NULL;
04.n->right=NULL;
05.n->inf1=inf1;
06.n->name=new char [strlen (name)+1];
07.strcpy_s (n->name, strlen (name)+1, name);
08.if (!root) {
09.   root=n;
10.   return;
11.}
12.Node* cur=root;
13.Node* prv=root;
14.while (!cur) {
15.   prv=cur;
16.   if (inf1<cur->inf1) cur=cur->left;
17.   else cur=cur->right;
18.}
19.if (inf1<prv->inf1) prv->left=n;
20.else prv->right=n;
21.return;
22.}
23. 
24.}
Comments ( 0 )
    -->