| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1021 人关注过本帖
标题:后插结点
只看楼主 加入收藏
飞扬白鸽
Rank: 1
等 级:新手上路
帖 子:108
专家分:0
注 册:2005-12-31
收藏
 问题点数:0 回复次数:6 
后插结点
后插结点,设p指向单链表中某结点,s指向待插入的值为x的新结点,将s插入到*p的后面.操作如下:
s->next=p->next;
p->next=s;
=================================
把s插到p的后面,为什么是s->next=p->next;
??
搜索更多相关主题的帖子: 结点 
2006-02-13 12:57
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
这样做是因为要保存p->next原来的信息
这样做的情况一般出现在两个场合
1、存在尾节点的情况,所谓尾节点指的就是一个特殊的节点,他也是一个节点,但是他所代表的意义不同,他表示链表的结束
2、在链表中间插入节点的情况
其实这两中情况都属于同一情况,那就是插入操作。

比如 如果p->next指向的是x节点,我想在p和x之间插入一个s,怎么做呢?
s->next = p->next //这个时候s->next和p->next同时指想x节点,起到了保存p->next原有信息的作用
p->next = s; //重新定向p->next,把p->next指向s节点,而这个时候s->还是指向x节点的

所以便形成了p -> s -> x的链表

淘宝杜琨
2006-02-13 13:13
飞扬白鸽
Rank: 1
等 级:新手上路
帖 子:108
专家分:0
注 册:2005-12-31
收藏
得分:0 
谢了,偶终于懂了!!!

还有点小疑问,为什么要保存p->next的原有信息?

淘宝网——小新图书店http://shop33459977./ 经典图书光盘仅在这里。
2006-02-13 13:18
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
p->next的信息就是x节点的地址
如果不保存它,那么x节点就会丢失在内存中,你再也找不到他啦

淘宝杜琨
2006-02-13 13:24
飞扬白鸽
Rank: 1
等 级:新手上路
帖 子:108
专家分:0
注 册:2005-12-31
收藏
得分:0 


赞一个

淘宝网——小新图书店http://shop33459977./ 经典图书光盘仅在这里。
2006-02-13 13:27
aiyuheng
Rank: 1
等 级:新手上路
威 望:1
帖 子:656
专家分:0
注 册:2006-1-12
收藏
得分:0 
我觉得 学链表的时候还是画画图比较好
拿个箭头指指就明白了

when i want to ask anyone,i will ask myself first.
2006-02-13 13:27
飞扬白鸽
Rank: 1
等 级:新手上路
帖 子:108
专家分:0
注 册:2005-12-31
收藏
得分:0 
书上的确有图,图能明白

淘宝网——小新图书店http://shop33459977./ 经典图书光盘仅在这里。
2006-02-13 13:39
快速回复:后插结点
数据加载中...
 
   



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

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