Bessere Namen für Variablen.
guess_chars in übergeordnete Funktion verpackt. So kann die untergeordnete rekursive Funktion auf ein lokales Array zurückgreifen, das die übergeordnete Funktion als Rückgabewert ausgibt.
Neue Funktion: ist schneller, basiert auf ganz anderem Prinzip
Bessere Namen für Variablen.
guess_chars in übergeordnete Funktion verpackt. So kann die untergeordnete rekursive Funktion auf ein lokales Array zurückgreifen, das die übergeordnete Funktion als Rückgabewert ausgibt.
Neue Funktion: guess_vocabs_BUT_AWESOME, braucht nur noch ca. 30 Sekunden (statt ursprünglich 4h). Problem an der ursprünglichen Funktion: sie ist immer wieder von neuem durch die (fast gesamte) Wortliste gelaufen, um zu prüfen, ob ein Buchstabensalat Sinn ergibt (schätzungsweise 10.000-100.000 Mal für die 3500 Buchstabensalate, die im ersten Schritt aus dem Morsecode entstanden sind). Die neue Funktion überprüft systematisch (von hinten nach vorne länger werdende) Morseschnipsel darauf, ob sie sich zu sinnvollen Worten arrangieren lassen und merkt sich das. Lässt sich in einem Schnipsel ein bisher noch nicht gefundenes Wort finden, wird dieses mit allen Phrasen (Wortkombinationen) kombiniert, die sich aus dem Rest des Schnipsels bilden lassen.