Download Rotate List.py
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def rotateRight(self, head, k): """ :type head: ListNode :type k: int :rtype: ListNode """ if not head or k == 0: return head slow = fast = head length = 1 while k and fast.next: fast = fast.next length += 1 k -= 1 if k != 0: k = (k + length - 1) % length # original k % length return self.rotateRight(head, k) else: while fast.next: fast = fast.next slow = slow.next return self.rotate(head, fast, slow) def rotate(self, head, fast, slow): fast.next = head head = slow.next slow.next = None return head
Leetcode 061 Rotate List problem solution in python3 with explanation. This is the best place to expand your knowledge and get prepared for your next interview.
Feedback is the most important part of any website.
If you have any query, suggestion or feedback, Please feel free to contact us.