Вот конкретные требования:
- Поменяйте местами узлы в k-группах.
- Если количество узлов не кратно k, оставшиеся узлы в конце должны остаться такими, какие они есть.
- Решение должно быть на месте.
Вот упрощенная версия моей реализации связанного списка:
Вот упрощенная версия моей реализации связанного списка:
Вот упрощенная версия моей реализации связанного списка:
р>
Код: Выделить всё
class ListNode {
int val;
ListNode next;
ListNode(int x) { val = x; }
}
public class ReverseKGroup {
public static ListNode reverseKGroup(ListNode head, int k) {
// Implement the logic here
}
public static void main(String[] args) {
ListNode head = new ListNode(1);
head.next = new ListNode(2);
head.next.next = new ListNode(3);
head.next.next.next = new ListNode(4);
head.next.next.next.next = new ListNode(5);
int k = 3;
ListNode newHead = reverseKGroup(head, k);
// Print the reversed list
while (newHead != null) {
System.out.print(newHead.val + " -> ");
newHead = newHead.next;
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... ava-withou