当前位置:   article > 正文

[PTA] 链表逆置_链表逆置c语言pta

链表逆置c语言pta

本题要求实现一个函数,将给定单向链表逆置,即表头置为表尾,表尾置为表头。链表结点定义如下:

函数接口定义:

其中head是用户传入的链表的头指针;函数reverse将链表head逆置,并返回结果链表的头指针。

裁判测试程序样例:

输入样例:

输出样例:

  1. //这种用图来解释的方式对理解有用吗?如果没有下次就不弄了,说一下呗,谢谢!因为作图真的好麻烦啊!
  2. struct ListNode* reverse(struct ListNode* head)//2
  3. { //3
  4. struct ListNode* q = head, * t, * p = NULL;//4
  5. while (q) //5
  6. { //6
  7. t = q->next; //7
  8. q->next = p; //8
  9. p = q; //9
  10. q = t; //10
  11. } //11
  12. return p; //12
  13. } //13
  14. /*注:我的思路就是让这个链表的链接方向倒过来,比如:
  15. -> -> ->变成<- <- <-
  16. 这样从最右边开始输出变倒过来了至于具体方式我会用下面
  17. 的图来说明,希望有帮助,同时也希望得到你的建议*/

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/680937
推荐阅读
相关标签
  

闽ICP备14008679号