| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1462 人关注过本帖
标题:[求助] 逆转单链表的算法
只看楼主 加入收藏
guosheng1987
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-4-16
收藏
 问题点数:0 回复次数:10 
[求助] 逆转单链表的算法
如题,逆转单链表要怎么样实现呢,是不是用一个数组把 结点的数据部分存储起来,然后逆序依次填充到原来的 单链表的结点中呢
搜索更多相关主题的帖子: 算法 单链 
2007-05-18 20:10
无玩过界
Rank: 1
等 级:新手上路
威 望:2
帖 子:246
专家分:0
注 册:2007-2-20
收藏
得分:0 
这个要动手自己画图,才会知道。

2007-05-18 20:11
guosheng1987
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-4-16
收藏
得分:0 
还是设置一个链栈,从头结点依次往内输入,让它先进去的结点最后出来,依次出入栈,但是这样有点麻烦,
我想找简单点的算法
2007-05-18 20:17
无玩过界
Rank: 1
等 级:新手上路
威 望:2
帖 子:246
专家分:0
注 册:2007-2-20
收藏
得分:0 
较好做方法是,不变顺序表通过另的数组去改变顺序表内容也可。

2007-05-18 20:22
guosheng1987
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-4-16
收藏
得分:0 
对啊,我就是这么想的,可以利用类似冒泡的方法吗
2007-05-18 20:32
无玩过界
Rank: 1
等 级:新手上路
威 望:2
帖 子:246
专家分:0
注 册:2007-2-20
收藏
得分:0 
不需要用到冒泡的方法,直接将数组倒转即可。

2007-05-18 20:35
guosheng1987
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-4-16
收藏
得分:0 
那是可以,但是如果我需要改变结点如何做呢,
2007-05-18 20:41
无玩过界
Rank: 1
等 级:新手上路
威 望:2
帖 子:246
专家分:0
注 册:2007-2-20
收藏
得分:0 
呵呵,所以这个要画图,怎样将链表中指针配合好很重要。

2007-05-18 20:46
guosheng1987
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-4-16
收藏
得分:0 
void reverse_LList(node *head)
{
node *p,*q,*temp;
if(head == NULL){ cout << "空表" << endl; return ; }
p = head;
while(p->next != NULL)
{
q = p; //保存p结点
p = p->next; //进位
temp = p->next;//保存当前结点指针域
q = temp; //指向当前结点的前一个结点
q = q->next;//新结点进位

}
head = q;
return q

}
这样写有没有错的啊
2007-05-18 22:19
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
逆转单链表的算法
只有guosheng1987说了单链表.

倚天照海花无数,流水高山心自知。
2007-05-18 23:25
快速回复:[求助] 逆转单链表的算法
数据加载中...
 
   



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

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