Top 150-InterviewEinfach

Liste neu anordnen

Detaillierte Anleitung und Python-Implementierung für das Problem „Nachbestellungsliste“.

Problemstellung

Einfach

Sie erhalten den Kopf einer einfach verknüpften Liste. Die Liste kann wie folgt dargestellt werden:

L0 → L1 → … → Ln-1 → Ln

Ordnen Sie die Liste so an, dass sie in der folgenden Form vorliegt:

L0 → Ln → L1 → Ln-1 → L2 → Ln-2 → …

Sie dürfen die Werte in den Knoten der Liste nicht ändern. Es dürfen nur Knoten selbst geändert werden.

Die verknüpfte Liste wird als Python-Liste dargestellt. Implementieren Sie eine Funktion reorderList(head: list) -> list, die die neu geordnete Liste zurückgibt.

Einschränkungen
  • The number of nodes in the list is in the range [1, 50000]
  • 1 <= Node.val <= 1000

Beispiele

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

The list 1->2->3->4 is reordered to 1->4->2->3.

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

The list 1->2->3->4->5 is reordered to 1->5->2->4->3.

Need a Hint?
Erwägen Sie die Verwendung verknüpfter Listen-spezifischer Datenstrukturen wie Mengen oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

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

Im Editor öffnen
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

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.