题解 | #反转链表#

思路:

定义两个指针,一个指向前驱节点的pre,初始时为None,另一个cur指向要遍历的节点。我们重点要做的是保存cur的下一个节点,然后保存了之后让cur.next指向pre,接着就是把pre和cur都后移动一位。

代码:

# -*- coding:utf-8 -*-
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None
class Solution:
    # 返回ListNode
    def ReverseList(self, pHead):
        # write code here
        pre = None # 指向前一个节点
        cur = pHead # 指向当前节点
        while cur:
            temp = cur.next # 保存下一个节点
            cur.next = pre # 当前节点指向我们定义的前面
            pre = cur # 前驱后移
            cur = temp # 当前指针后移
        return pre
全部评论

相关推荐

不愿透露姓名的神秘牛友
04-16 16:26
我的工资够买几件上千的衣服?是时候反思了
菜鸟CV程序猿:国内这都不是老板,是奴隶主
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务