# Leetcode Rotate List problem solution

In this Leetcode Rotate List problem solution we have given the head of a linked list, rotate the list to the right by k places.

## Problem solution in Python.

```class Solution:
def rotateRight(self, head: ListNode, k: int) -> ListNode:
values = []
dummay = ListNode()
cur = dummay
for i in range(k % len(values)):
values.insert(0,values.pop())
for j in values:
cur.next = ListNode(j)
cur = cur.next
return dummay.next
```

## Problem solution in Java.

```public class Solution {
public ListNode rotateRight(ListNode head, int k) {
int count = 1;
while(p.next!= null){
count++;
p = p.next;
}
k = k % count;
p.next = head;      /*make a circle here*/
for(int i = 0; i < count - k - 1; i++){
p = p.next;
}
ListNode dummy = p.next;
p.next = null;
return dummy;
}
}
```

## Problem solution in C++.

```class Solution {
public:
ListNode* rotateRight(ListNode* head, int k) {
int nodes = 1;
while(temp->next != NULL){
temp = temp->next;
nodes++;
}
k = k % nodes;
int i = 0;
while(i<nodes-k-1){
cur = cur->next;
i++;
}
cur->next = NULL;
}
};
```

## Problem solution in C.

```struct ListNode* rotateRight(struct ListNode* head, int k){
int length = 0;
struct ListNode* tmp;
struct ListNode* tmp2;
while (tmp) {
length++;
tmp2 = tmp;
tmp = tmp->next;
}
if (length == 0) {
}
k = k % length;
for (int i = 0; i < length - k - 1; i++) {
tmp = tmp->next;
}