题解 | #反转链表#

反转链表

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

class Solution:
    def ReverseList(self, head: ListNode) -> ListNode:
        # MOST EASY SOLUTION BUT O(n) IN SPACE
        # stack = []
        # while head:
        #     stack.append(head.val)
        #     head = head.next
        # res = cur = ListNode(0)
        # while stack:
        #     cur.next = ListNode(stack.pop())
        #     cur = cur.next
        # return res.next

        # BELOW IS A SOLUTION TAKE O(1) IN SPACE
        # THE POINTER BETWEEN pre AND cur is the loop, IT SHOULD BE NOT BE LINKED
        pre = None
        cur = head
        while cur:
            tmp = cur.next
            cur.next = pre
            pre, cur = cur, tmp
        return pre

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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