Our Blog

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

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

void add (Node* &root, int inf1, char* name) {
Node* n=new Node;
n->left=NULL;
n->right=NULL;
n->inf1=inf1;
n->name=new char [strlen (name)+1];
strcpy_s (n->name, strlen (name)+1, name);
if (!root) {
   root=n;
   return;
}
Node* cur=root;
Node* prv=root;
while (!cur) {
   prv=cur;
   if (inf1<cur->inf1) cur=cur->left;
   else cur=cur->right;
}
if (inf1<prv->inf1) prv->left=n;
else prv->right=n;
return;
}

}
Comments ( 0 )
    -->