题解 | #反转链表#

反转链表

http://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca

/**

  • struct ListNode {
  • int val;
  • struct ListNode *next;
  • };
  • C语言声明定义全局变量请加上static,防止重复定义 */

/** *

  • @param pHead ListNode类

  • @return ListNode类 / struct ListNode ReverseList(struct ListNode* pHead ) { struct ListNode *pre=NULL,*temp=NULL; struct ListNode *cur=pHead; while(cur!=NULL) {

     temp=cur->next;//保存当前结点的下一个结点的值,防止链表断开时找不到下一个结点
     cur->next=pre;//让cur指向pre
     pre=cur;//pre向前移动一步到cur的位置
     cur=temp;//cur向前移动一步到cur的下一个结点的位置
    

    } return pre;//循环结束时pre指向链表反转后头结点的位置

}

全部评论

相关推荐

03-31 17:40
已编辑
门头沟学院 算法工程师
程序员牛肉:小牛肉来也! 也不要焦虑啦,你第一志愿还没有结束,只是回到人才库(泡大池子等待各个部门挑选)而已。仅仅代表你不符合这个组的用人标准,并不能够说明你在本次暑期实习中没机会加入美团了。 还是平复好心态,不断的复盘,等待下一次面试就好了。
点赞 评论 收藏
分享
04-11 21:31
四川大学 Java
野猪不是猪🐗:(ja)va学弟这招太狠了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务