ik probeer in java een algoritme te bedenken dat aan de hand van een woordenlijst met woordjes van 5 letters (zie http://www.psc.edu/~burkardt/wordplay/pentagram.html) pentagrampuzzels maakt. er moet dus uiteindelijk een matrix uitkomen die van links naar rechts en van boven naar beneden woorden vormt (met woordjes uit die lijst hierboven).
een voorbeeldje:
nou heb ik gisteravond een algoritme bedacht dat eerst random een woord pakt voor de eerste kolom, en dan bovenaan de lijst begint voor de 2de kolom en dan kijkt of de rijen geldige beginlettercombinaties vormen voor de woorden in de rijen. zo ja dan ga ik naar kolom 3. zo niet dan proberen we een nieuw woord uit de lijst.
is er geen woord mogelijk in kolom 3 dat goede beginlettercombinaties opleverd voor de woorden in de rijen dan spring ik 1 kolom terug en verander het woord in kolom 2.
met een korte woordenlijst (zoals een lijst met alleen de woordjes in het pentagram hierboven) was het algoritme in 1 seconde klaar. ik liet hem vanacht alleen los op de totale woordenlijst uit de url hierboven en vanochtend (na 7 uur proberen
) was hij nog steeds niet klaar... hij probeert gewoon teveel combinaties.
zijn laatste output was:
hij was dus nog steeds maar bij kolom 4 met proberen
het algoritme zoals ik het nu gebruik staat hier.
weet misschien iemand een beter algoritme? of enige optimalisaties die ik kan doorvoeren??
een voorbeeldje:
code:
1
2
3
4
5
| S A T O R A R E P O T E N E T O P E R A R O T A S |
nou heb ik gisteravond een algoritme bedacht dat eerst random een woord pakt voor de eerste kolom, en dan bovenaan de lijst begint voor de 2de kolom en dan kijkt of de rijen geldige beginlettercombinaties vormen voor de woorden in de rijen. zo ja dan ga ik naar kolom 3. zo niet dan proberen we een nieuw woord uit de lijst.
is er geen woord mogelijk in kolom 3 dat goede beginlettercombinaties opleverd voor de woorden in de rijen dan spring ik 1 kolom terug en verander het woord in kolom 2.
met een korte woordenlijst (zoals een lijst met alleen de woordjes in het pentagram hierboven) was het algoritme in 1 seconde klaar. ik liet hem vanacht alleen los op de totale woordenlijst uit de url hierboven en vanochtend (na 7 uur proberen
zijn laatste output was:
code:
1
2
3
4
5
6
7
| raiaz eatey dragm uglii xhosn column 4 is consistent no matches found for column 5 -> resetting column 4 |
hij was dus nog steeds maar bij kolom 4 met proberen
het algoritme zoals ik het nu gebruik staat hier.
weet misschien iemand een beter algoritme? of enige optimalisaties die ik kan doorvoeren??