Hallo zusammen,
ich habe mir mal wieder eine neue Code Kata ausgedacht, bzw. mir diese interessante Kata aus http://codekata.com/kata/kata06-anagrams/ zur Übung herausgesucht.
Es geht darum aus einer simplen Liste an Wörtern alle Kombinationen herauszufinden, die ein Anagramm darstellen. Die Wortliste kann unter http://codekata.com/data/wordlist.txt heruntergeladen werden.
Diese Aufgabe ist anspruchsvoller als die vorherigen Katas, da man sich neben einigen Implementierungsdetails auch noch einen passenden Algorithmus ausdenken muss. Möglichst performant sollte dieser natürlich auch noch sein - und am besten auch noch kurz, leicht zu lesen und verstehen sowie wartbar. Also eine perfekte Aufgabe um die Zeit bis Weihnachten totzuschlagen und dabei etwas zu lernen 🙂
Als kleinen Tipp zum Start biete ich hier mal den ersten Codeschnipsel, um die Daten aus der Datei nach SAS einzulesen:
filename words URL "http://codekata.com/data/wordlist.txt" termstr=LF; data words; length word $60; infile words encoding='wlatin1'; input word $; run;
Noch ein Hinweis für alle: das längste Wort ist 60 Zeichen lang.
Da ich auch bald Urlaub habe und niemandem die Lösung vorenthalten will, werde ich meine Lösung als Datei an diesen Post anhängen. Ich bin gespannt, ob jemand eine bessere Lösung findet. Wie immer sind Diskussionen sehr erwünscht.
Ich wünsche allen viel Spaß beim Knobeln und schöne Festtage!
Viele Grüße,
Andreas Menrath
... View more