我試圖實現二叉搜索樹的代碼。問題是下面的代碼不工作,但它工作,如果我傳遞雙指針插入funcion像插入(結構bst **節點,數據)。我認爲它也應該通過傳遞單個指針。任何人都可以解釋這裏有什麼錯誤嗎?BST插入不工作
void insert(struct bst* node, int data)
{
if (node == NULL)
{
printf("here with %d\n",data);
node = (struct bst*)malloc(sizeof(struct bst));
node->data = data;
node->left = NULL;
node->right = NULL;
}
if(data < node->data)
{
insert(node->left,data);
}
else if(data > node->data)
{
insert(node->right,data);
}
}