150 najlepszych wywiadówŁatwe

Odwróć węzły w grupie K

Szczegółowy przewodnik i implementacja Python dla problemu „Odwróć węzły w grupie K”.

Oświadczenie o problemie

Łatwe

Mając nagłówek połączonej listy, odwracaj węzły listy k po kolei i zwracaj zmodyfikowaną listę.

k jest dodatnią liczbą całkowitą i jest mniejsza lub równa długości połączonej listy. Jeżeli liczba węzłów nie jest wielokrotnością k, to ostatecznie pominięte węzły powinny pozostać bez zmian.

Nie możesz zmieniać wartości w węzłach listy, można zmieniać jedynie same węzły.

Połączona lista jest reprezentowana jako lista Python. Zaimplementuj funkcję reverseKGroup(head: list, k: int) -> list.

Ograniczenia
  • The number of nodes in the list is n
  • 1 <= k <= n <= 5000
  • 0 <= Node.val <= 1000

Przykłady

Example 1
Input
[1,2,3,4,5], 2
Output
[2,1,4,3,5]
Explanation

Reverse in groups of 2: [1,2] becomes [2,1], [3,4] becomes [4,3], and [5] stays as is.

Example 2
Input
[1,2,3,4,5], 3
Output
[3,2,1,4,5]
Explanation

Reverse in groups of 3: [1,2,3] becomes [3,2,1], and [4,5] has fewer than 3 nodes so it stays.

Need a Hint?
Rozważ użycie struktur danych specyficznych dla listy połączonej, takich jak zestawy lub sterty.
Edge Cases to Watch
  • Puste struktury wejściowe
  • Wejścia jednoelementowe
  • Duże granice liczbowe

Gotowy do rozwiązania?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Otwórz w Edytorze
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.