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 ungleich| Register | Verwendung | Typ | Beschreibung |
|---|---|---|---|
$a0 |
Eingabe | Adresse | Elemente des ersten Arrays |
$a1 |
Eingabe | Ganzzahl | Größe des ersten Arrays, in Wörtern |
$a2 |
Eingabe | Adresse | Elemente des zweiten Arrays |
$a3 |
Eingabe | Ganzzahl | Größe des zweiten Arrays, in Wörtern |
$v0 |
Ausgabe | Ganzzahl |
0 = gleich, 1 = ungleich, 2 = Unterliste, 3 = Oberliste |
$t0-9 |
temporär | beliebig | wird für die temporäre Speicherung verwendet |
Melde dich bei Exercism an, um MIPS Assembly mit 70 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.