刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

请填补C函数ReverseList中的空缺部分,实现单链表就地逆置的功能。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

!headptr->next,或!headptr||!headptr->next,或其等价形式
headptr->next
headptr->next->next,或p->next,或其等价形式
s->next,或p->next,  或其等价形式
p

解析:

本题考察的是链表的基本操作以及指针的应用。

  1. 空链表的判断:如果头结点的指针域为空,表示链表为空,因此第一个空处应填入"!headptr->next",表示当链表为空时直接返回,不进行后续操作。
  2. 令P指向第一个元素结点:根据注释,这里需要让P指向链表的第一个元素结点,因此第二个空处应填入"headptr->next"。
  3. 设置第一个元素结点的指针域为空:这一步是为了将第一个元素结点与后面的链表断开,方便后续的插入操作。因此第三个空处应填入"headptr->next->next",或者"p->next",表示第一个元素结点的下一个结点。
  4. 在while循环中,s指向未逆置部分的第一个结点。在每次循环中,我们需要将s所指结点插入已完成逆置的部分的表头,并更新s的值。因此第四个空处应填入"s->next",或者"p->next",表示未逆置部分的下一个结点。
  5. 在将s所指结点插入已完成逆置的部分的表头后,需要更新头结点的指针域,使其指向新的表头结点。因此最后一个空处应填入"p",表示新插入的结点。
创作类型:
原创

本文链接:请填补C函数ReverseList中的空缺部分,实现单链表就地逆置的功能。

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share