在网上尝试了很多探索,但没有得到任何帮助, 无论哪里都是像将节点添加到二叉查找树中。
问题:请求添加节点到二叉树的算法和代码片段(或指向正确URL的链接)。
假设: 据我所知,二叉树和二叉搜索树是不同的?如果我错了,请纠正我。
(请求:如果您编写代码片段,请使用适当的变量名,这有助于理解)
例如:二叉树
5 7 3 x1 x2 x3
5
7 3
x1 x2 x3
二叉搜索树 5 7 3 2 4 6
5
3 7
2 4 6
insert(int key, struct node **root)
{
if( NULL == *root )`
{
*root = (struct node*) malloc( sizeof( struct node ) );`
(*root)->data = key;
(*root)->left = NULL;
(*root)->right = NULL;
}
else if(key < (*root)->data)
{
insert( key, &(*root)->left );
}
else if(key > (*root)->data)
{
insert( key, &(*root)->right );
}
}