1. You are given a singly linked list N nodes.
2. You are also given a number K.
3. You have to write a function that reverses the nodes of a linked list K
at a time and return its modified list.
Note:
1. K is a positive integer and is less than or equal to the length
of the linked list.
2. If the number of nodes is not a multiple of K then left-out nodes
in the end should remain as it is.
3. Only constant extra memory is allowed.
4. You may not alter the values in the list's nodes, only nodes itself
may be changed.
4. display is a utility function which displays the contents of Linked List,
feel free to use it for debugging purposes.
5. main takes input from the users and creates the Linked List. You can use
display to know its contents.
6. This is a functional problem.
7. You should code only the reverseKGroup function. It takes as input the
head of the linked list and K. It should return the head of the modified
linked list.
8. Don't change the code of Node, main and display.Input Format
First line takes N, the number of elements in the list. Second line takes input N space separated numbers reperesenting elements of the linked list. Third line takes input K. Input is handled for you.
Output Format
Modified Linked List. Output is handled for you.
Constraints
1 <= K <= N <= 1000
Notice
Try First, Check Solution later
1. You should first read the question and watch the question video.2. Think of a solution approach, then try and submit the question on editor tab.3. We strongly advise you to watch the solution video for prescribed approach.Example
Input
8 1 2 3 4 5 6 7 8 3
Output
3 2 1 6 5 4 7 8