| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3662 人关注过本帖
标题:二叉排序树删除结点问题
只看楼主 加入收藏
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
结帖率:57.14%
收藏
已结贴  问题点数:20 回复次数:6 
二叉排序树删除结点问题
比如只有一个结点,左子树为空,  s=p;p=p-r;free(s),这样是怎么实现把右子树的值复制到要删除的那个结点上
2015-12-12 12:33
林月儿
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:湖南
等 级:版主
威 望:138
帖 子:2277
专家分:10647
注 册:2015-3-19
收藏
得分:0 
s=p;p=p-r;free(s),

=》s=p;p=p->r;free(s);

断章取义大婶也做不到

剑栈风樯各苦辛,别时冰雪到时春
2015-12-12 20:57
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
收藏
得分:0 
回复 2楼 林月儿
int Delete(BiTree &p)  
{  
      
    BiTree q, s;  
    if(  !p->lchild&&!p->rchild )   
        p=NULL;  
    else if(!p->lchild)  
    {  
        q=p;   
        p=p->rchild;  
        free(q);  
    }  
    else if(!p->rchild)   
    {  
        q=p;  
        p=p->lchild;      
        free(q);  
    }
像这样,p的指向是改变了,但原来的p地址不是给q了么,这样子有把P这个结点删除么
2015-12-12 22:12
林月儿
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:湖南
等 级:版主
威 望:138
帖 子:2277
专家分:10647
注 册:2015-3-19
收藏
得分:20 
以下是引用不同认为在2015-12-12 22:12:12的发言:

int Delete(BiTree &p)   
{   
      
    BiTree q, s;   
    if(  !p->lchild&&!p->rchild )   
        p=NULL;   
    else if(!p->lchild)   
    {   
        q=p;   
        p=p->rchild;   
        free(q);   
    }   
    else if(!p->rchild)   
    {   
        q=p;   
        p=p->lchild;      
        free(q);   
    }
像这样,p的指向是改变了,但原来的p地址不是给q了么,这样子有把P这个结点删除么

你说p指向变了。。。对但不是重点,重点是p代表的结点变了,这里的局部代码对p代表的原结点通过q删除后
接着对p操作转嫁子树

剑栈风樯各苦辛,别时冰雪到时春
2015-12-13 20:44
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
收藏
得分:0 
回复 4楼 林月儿
图片附件: 游客没有浏览图片的权限,请 登录注册
我觉得应该长这样才对
2015-12-13 21:08
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
收藏
得分:0 
回复 4楼 林月儿
实在想不清怎么删除的
2015-12-13 21:20
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
收藏
得分:0 
回复 4楼 林月儿
哪个代码体现出p的原结点通过q删除了
2015-12-14 20:43
快速回复:二叉排序树删除结点问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017402 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved