◆2.22③ 试写一算法,对单链表实现就地逆置。

实现下列函数:voidInverse(LinkList&L);/*对带头结点的单链表L实现就地逆置*/单链表类型定义如下:typedefstructLNode{ElemT... 实现下列函数:
void Inverse(LinkList &L);
/* 对带头结点的单链表L实现就地逆置 */

单链表类型定义如下:
typedef struct LNode{
ElemType data;
struct LNode *next;
} LNode, *LinkList;

以下是我的回答,哪里错了

{ int s,i;
int temp;
LinkList p=L,q=L,k=L,z;

for(s=0;p!=null;s++)
{ z=p;
p=p->next;}
p=z;//p 为最后的结点
for(i=0;i<s/2;i++)
{ temp=q->data;
q->data=p->data;
p->data=temp;
q=q->next;
for(;k->next!=p;)
{k=k->next;}
p=k;

} }
展开
 我来答
chiconysun
2013-04-09 · TA获得超过2.2万个赞
知道大有可为答主
回答量:5410
采纳率:92%
帮助的人:2588万
展开全部
实在太繁琐了,下面写一个简单的吧,方法是将所有结点从链表中依次摘下,然后顺序在链表表头插入
void Inverse(LinkList &L)
{
LNode *p, *q;
p = L->next;
L->next = NULL;
while (p != NULL)
{
q = p;
p = p->next;
q->next = L->next;
L->next = q;
}
}
追问
我的那种方法可行吗
追答
头绪太多,效率也太低,非常容易出错
Sievers分析仪
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式