Teilliste

Teilliste

Mittel

Anleitung

Bestimme für zwei beliebige Listen A und B, ob:

  • die Liste A gleich der Liste B ist; oder
  • die Liste A die Liste B enthält (A ist eine Oberliste von B); oder
  • die Liste A in der Liste B enthalten ist (A ist eine Unterliste von B); oder
  • nichts davon zutrifft, die Listen A und B also ungleich sind

Konkret: Die Liste A ist gleich der Liste B, wenn beide Listen dieselben Werte in derselben Reihenfolge enthalten. Die Liste A ist eine Oberliste von B, wenn A eine zusammenhängende Teilfolge von Werten enthält, die gleich B ist. Die Liste A ist eine Unterliste von B, wenn B eine zusammenhängende Teilfolge von Werten enthält, die gleich A ist.

Beispiele:

  • Wenn A = [] und B = [] (beide Listen sind leer), dann sind A und B gleich
  • Wenn A = [1, 2, 3] und B = [], dann ist A eine Oberliste von B
  • Wenn A = [] und B = [1, 2, 3], dann ist A eine Unterliste von B
  • Wenn A = [1, 2, 3] und B = [1, 2, 3, 4, 5], dann ist A eine Unterliste von B
  • Wenn A = [3, 4, 5] und B = [1, 2, 3, 4, 5], dann ist A eine Unterliste von B
  • Wenn A = [3, 4] und B = [1, 2, 3, 4, 5], dann ist A eine Unterliste von B
  • Wenn A = [1, 2, 3] und B = [1, 2, 3], dann sind A und B gleich
  • Wenn A = [1, 2, 3, 4, 5] und B = [2, 3, 4], dann ist A eine Oberliste von B
  • Wenn A = [1, 2, 4] und B = [1, 2, 3, 4, 5], dann sind A und B ungleich
  • Wenn A = [1, 2, 3] und B = [1, 3, 2], dann sind A und B ungleich

Anhang

Note

Die Anleitung oben wird mit einem gemeinsamen Repository synchronisiert, um Konsistenz über alle Sprach-Tracks hinweg zu gewährleisten. Dieser Anhang enthält zusätzliche Erläuterungen oder passt die Anleitung nach Bedarf an, um besser zu den Zielen des Clojure-Tracks zu passen.

Für diese Übung im Clojure-Track kannst du davon ausgehen, dass die Eingabe ein Vektor ist, wie die Tests zeigen.

Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab
Clojure Exercism

Bereit, mit Teilliste zu starten?

Melde dich bei Exercism an, um Clojure mit 12 Konzepte105 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.