NC78 反转链表

题目描述:

输入一个链表,反转链表后,输出新链表的表头。
示例1
输入
{1,2,3}
返回值
{3,2,1}

题解:
 用res指针来指向反转后的代码,cur指针用于遍历head链表,然后用temp指针存储cur的下一个节点,以免信息丢失。
即 1->2->3变为1<-2<-3这种形式

三种语言代码:
C++:

class Solution {
public:
    ListNode* ReverseList(ListNode* pHead) {
        ListNode *res = NULL;
        ListNode *cur = pHead;
        while(cur != NULL){
            ListNode *temp = cur->next;
            cur->next = res;
            res = cur;
            cur = temp;
        }
        return res;


    }
};

Java:

public class Solution {
    public ListNode ReverseList(ListNode head) {
        ListNode res = null;
        ListNode cur = head;
        while(cur != null){
            ListNode temp = cur.next;
            cur.next = res;
            res = cur;
            cur = temp;
        }
        return res;


    }
}

Python3:
class Solution:
    # 返回ListNode
    def ReverseList(self, pHead):
        # write code here
        res = None
        cur = pHead
        while cur != None:
            temp = cur.next
            cur.next = res
            res = cur
            cur = temp

        return res


图片说明

全部评论

相关推荐

11-04 19:05
已编辑
东莞城市学院 单片机
不知道怎么取名字_:你这个要实习两年?哪有这么久的,感觉就是即使你毕业了,但还按实习的话,是不是不用给你缴社保公积金啥的
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
12-18 11:21
优秀的大熊猫在okr...:叫你朋友入职保安,你再去送外卖,一个从商,一个从政,你们两联手无敌了,睁开你的眼睛看看,现在是谁说了算(校长在背后瑟瑟发抖)
选实习,你更看重哪方面?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务