要进行插入,首先要在BST中进行查找,若key值已经存在,则应返回ERROR;不存在时,由于第一步的search操作已经返回了查找路径上的最后一个结点,只需要把key值与最后一个节点的值进行比较,比它小则为左子树,反之为右子树,代码如下:
/* 二叉树(BST树)的插入 */
#include <stdio.h>
#include <stdlib.h>
struct tree //树结构的声明
{
int data; //结点数据
struct tree *left; //指向左子树的指针
struct tree *right; //指向右子树的指针
};