当前位置:   article > 正文

数据结构--力扣--反转链表

数据结构--力扣--反转链表

反转链表很经典,常出现在校招面试中,出现频率top1。

反转链表校招热门题型

思路一:翻指针(翻指针的方向)如图:

执行过程如图:

  1. struct ListNode* reverseList(struct ListNode* head){
  2. if(head==NULL)
  3. return NULL;
  4. else
  5. {
  6. struct ListNode* n1=NULL,*n2=head,*n3=n2->next;
  7. //结束条件
  8. while(n2!=NULL)
  9. {
  10. //迭代过程
  11. n2->next=n1;
  12. n1=n2;
  13. n2=n3;
  14. if(n3!=NULL)
  15. {n3=n3->next;}
  16. }
  17. return n1;
  18. }
  19. }

思路二:头插法

 

  1. struct ListNode* reverseList(struct ListNode* head){
  2. struct ListNode *cur=head,*newhead=NULL;
  3. while(cur!=NULL)
  4. {
  5. struct ListNode* next=cur->next;
  6. cur->next=newhead;
  7. newhead=cur;
  8. cur=next;
  9. }
  10. return newhead;
  11. }

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

闽ICP备14008679号