1class Solution {2public ListNode rotateRight(ListNode head, int k) {3if (k <= 0 || head == null || head.next == null) {4return head;5}67int length = 1;8ListNode first = head;9ListNode curr = head;10ListNode node = head;11while (node.next != null) {12length++;13node = node.next;14}1516if (k == length) {17return head;18}1920int n = length - (k % length);21for (int i = 0; i < n - 1; i++) {22curr = curr.next;23}2425node.next = head; // 5-->126head = curr.next;27curr.next = null;2829return head;30}31}