| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1030 人关注过本帖
标题:各位大虾帮帮忙哈,急……呜哇
只看楼主 加入收藏
huangso4986
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-9-10
收藏
 问题点数:0 回复次数:6 
各位大虾帮帮忙哈,急……呜哇
Write a procedure to reverse a singly linked list in O(N) time using constant extra space.
一道数据结构的题,一点头绪也没耶,各位大虾帮帮忙哈,谢谢啦……很急耶
搜索更多相关主题的帖子: 结构 procedure linked 
2005-09-11 18:54
starrysky
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:华中科技大学EI -T0405
等 级:版主
威 望:11
帖 子:602
专家分:1
注 册:2005-9-12
收藏
得分:0 
翻译过来应该是:编写一个程序将一个单链表就地逆置,要求时间复杂度为O(n).

我的征途是星辰大海
2005-09-12 12:31
starrysky
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:华中科技大学EI -T0405
等 级:版主
威 望:11
帖 子:602
专家分:1
注 册:2005-9-12
收藏
得分:0 


void revers(point head)//链表逆转置
{ point p,q,r;
p=head->next;
q=head->next;
r=q->next;
if(p==NULL || q==NULL)
printf("该链表无须转置。");
p->next=NULL; p=q;
while(r->next)
{
q=r; r=r->next;
q->next=p; p=q;
}
r->next=p; head->next=r;
}


[此贴子已经被作者于2006-9-22 13:02:29编辑过]


我的征途是星辰大海
2005-09-12 12:34
starrysky
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:华中科技大学EI -T0405
等 级:版主
威 望:11
帖 子:602
专家分:1
注 册:2005-9-12
收藏
得分:0 
OK,完成

我的征途是星辰大海
2005-09-12 12:35
starrysky
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:华中科技大学EI -T0405
等 级:版主
威 望:11
帖 子:602
专家分:1
注 册:2005-9-12
收藏
得分:0 
如果是要交作业, 抄完之后  还是要多思考一下,弄明白的好

我的征途是星辰大海
2005-09-13 14:23
cub
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-9-18
收藏
得分:0 
同求此题
偶然搜索到。。。看了一下觉得上面写的程序要用的时间是O(N^2)次吧——
2006-09-19 15:58
starrysky
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:华中科技大学EI -T0405
等 级:版主
威 望:11
帖 子:602
专家分:1
注 册:2005-9-12
收藏
得分:0 

不好意思,的确有问题。那个是空间复杂度为O(n)的。
现在改OK了,不过只给了个逆置函数,不是完整的原代码。
将链表建好后就可以用这个函数逆置。

[此贴子已经被作者于2006-9-22 13:05:12编辑过]


我的征途是星辰大海
2006-09-22 12:59
快速回复:各位大虾帮帮忙哈,急……呜哇
数据加载中...
 
   



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

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