Bestimme für zwei beliebige Listen A und B, ob:
A gleich der Liste B ist; oderA die Liste B enthält (A ist eine Oberliste von B); oderA in der Liste B enthalten ist (A ist eine Unterliste von B); oderA und B also ungleich sindKonkret: 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:
A = [] und B = [] (beide Listen sind leer), dann sind A und B gleichA = [1, 2, 3] und B = [], dann ist A eine Oberliste von B
A = [] und B = [1, 2, 3], dann ist A eine Unterliste von B
A = [1, 2, 3] und B = [1, 2, 3, 4, 5], dann ist A eine Unterliste von B
A = [3, 4, 5] und B = [1, 2, 3, 4, 5], dann ist A eine Unterliste von B
A = [3, 4] und B = [1, 2, 3, 4, 5], dann ist A eine Unterliste von B
A = [1, 2, 3] und B = [1, 2, 3], dann sind A und B gleichA = [1, 2, 3, 4, 5] und B = [2, 3, 4], dann ist A eine Oberliste von B
A = [1, 2, 4] und B = [1, 2, 3, 4, 5], dann sind A und B ungleichA = [1, 2, 3] und B = [1, 3, 2], dann sind A und B ungleichDie 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.
Melde dich bei Exercism an, um Clojure mit 12 Konzepte105 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.