algo0906.cpp

来自「严蔚敏的数据结构(C语言)源码」· C++ 代码 · 共 14 行

CPP
14
字号
Status InsertBST(BiTree &T, ElemType e) {  // 算法9.6
  // 当二叉排序树T中不存在关键字等于e.key的数据元素时,
  // 插入e并返回TRUE,否则返回FALSE
  BiTree p,s;
  if (!SearchBST(T, e.key, NULL, p)) {   // 查找不成功
    s = (BiTree)malloc(sizeof(BiTNode));
    s->data = e;  s->lchild = s->rchild = NULL;  
    if (!p) T = s;        // 插入 s 为新的根结点
    else if (LT(e.key, p->data.key)) p->lchild=s; // 插入s为左孩子
    else p->rchild = s;   // 插入 s 为右孩子
    return TRUE;
  } else return FALSE;  // 树中已有关键字相同的结点,不再插入
} // Insert BST

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?