LeetCode 025 Reverse Nodes i k-Group

LeetCode 025 Reverse Nodes i k-Group Problem

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

# class Solution(object):
#     def reverseKGroup(self, head, k):
#         """
#         :type head: ListNode
#         :type k: int
#         :rtype: ListNode
#         """
class Solution(object):
    def reverseKGroup(self, head, k):
        if head is None:
            return None
        index = 0
        lead, last = 0, 0
        pos = head
        temp = ListNode(-1)
        temp.next = head
        head = temp
        start = head
        while pos is not None:
            if index % k == k - 1:
                last = pos.next
                start = self.reverseList(start, last)
                pos = start
            pos = pos.next
            index += 1
        return head.next

    def reverseList(self, head, end):
        pos = head.next
        last = end
        next_start = pos
        while pos != end:
            head.next = pos
            last_pos = pos
            pos = pos.next
            last_pos.next = last
            last = last_pos
        return next_start


Download Reverse Nodes i k-Group.py

List of all Reverse Nodes i k-Group problems

Leetcode 025 Reverse Nodes i k-Group problem solution in python3 with explanation. This is the best place to expand your knowledge and get prepared for your next interview.

self.val = x

self.next = None

class Solution(object):

def reverseKGroup(self, head, k):

"""

:type head: ListNode

:type k: int

Feedback is the most important part of any website.

If you have any query, suggestion or feedback, Please feel free to contact us.