1. 程式人生 > >[LeetCode&Python] Problem 206. Reverse Linked List

[LeetCode&Python] Problem 206. Reverse Linked List

Reverse a singly linked list.

Example:

Input: 1->2->3->4->5->NULL
Output: 5->4->3->2->1->NULL

 

# Definition for singly-linked list.
# class ListNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution(object):
    def reverseList(self, head):
        """
        :type head: ListNode
        :rtype: ListNode
        """
        if head:
            if head.next is not None:
                s=self.reverseList(head.next)
                head.next.next=head
                head.next=None
                return s
            else:
                return head
        else:
            return head