大话数据结构——二叉排序树的删除操作~2020.8.15
发布日期:2021-05-10 13:33:58 浏览次数:23 分类:精选文章

本文共 3380 字,大约阅读时间需要 11 分钟。

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������

  • ������������������������������

    • ������������������������������������������������������������������������������������������������
    • ������������������������������������������������������������������������������������������������
    • ������������������������������������������������������������������������������������������������������������������������������������������������������������
  • ���������������������������

    • ������������������������������������������������������������������������������������������������������������������������������������������������
    • ������������������������������������������������������������������������������������������
    • ���������������������������������������������������������������������������������������������
  • ���������������������������

    typedef struct BiTNode {
    int data;
    BiTNode *lchild, *rchild;
    } BiTNode, *BiTree;
    bool Delete(BiTree *p) {
    BiTree q, s;
    if (*p->lchild == NULL) {
    q = *p;
    *p = *p->rchild;
    delete q;
    } else if (*p->rchild == NULL) {
    q = *p;
    *p = *p->lchild;
    delete p;
    } else {
    q = *p;
    s = *p->lchild;
    while (s->rchild != NULL) {
    q = s;
    s = s->rchild;
    }
    (*p)->data = s->data;
    if (q == *p) {
    q->lchild = s->lchild;
    } else {
    q->rchild = s->lchild;
    }
    delete s;
    }
    return true;
    }
    bool DeleteBST(BiTree *T, int key) {
    if (*T == NULL) return false;
    if (key == (*T)->data) {
    return Delete(T);
    } else if (key < (*T)->data) {
    return DeleteBST(&(*T)->lchild, key);
    } else {
    return DeleteBST(&(*T)->rchild, key);
    }
    }

    ������������������

  • ���������������

    • ���������������������������������������������������������������������������������������������������������������������
  • ���������������������

    • ������������������������������������������������������������������������������������������������������������������������������������������������
  • ������������������������

    • ������������������������������������������������������������
    • ���������������������������������������������������������������������������
    • ���������������������������������������������������
  • ������������������

  • ������������������

    • ���������������������������������������������������������������������������������������������������������
  • ������������������

    • ������������������������������������������������������������������������������������������������������������
  • ���������������������

    • ������������������������������������������������������������������������������������������������������������������������
  • ������������������

  • ���������������������

    • ������������������������������������������������������������������������������������������
  • ���������������������������

    • ���������������������������������������������������������������������������������
  • ���������������������

    • ���������������������������������������������������������������������
  • ���������������������������������������������������������������������������������������������������������������������������������������������

    上一篇:大话数据结构——图的再讨论(一)~2020.9.2
    下一篇:交换二叉树中每个结点的左孩子和右孩子~2020.8.13~学习笔记

    发表评论

    最新留言

    逛到本站,mark一下
    [***.202.152.39]2025年04月01日 12时01分35秒