Springen naar inhoud

Anagrammenlijst


  • Log in om te kunnen reageren

#1

dirkwb

    dirkwb


  • >1k berichten
  • 4202 berichten
  • Moderator

Geplaatst op 22 augustus 2018 - 22:07

Is er ergens digitaal een lijst met alle Nederlandse anagrammen te vinden? Dus niet met namen van bekende mensen of iets dergelijks maar van de reguliere Nederlandse woorden. Het liefst geordend op basis van aantal letters.
Quitters never win and winners never quit.

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

Benm

    Benm


  • >5k berichten
  • 11001 berichten
  • VIP

Geplaatst op 23 augustus 2018 - 01:39

Ik vermoed van niet. Er zijn ongetwijfeld lijsten met anagrammen, maar ik denk dat nooit volledig kunnen zijn, zeker niet als een anagram ook nog spaties mag bevatten (bijv "lopen op" als anagram van "oplopen"). 

 

Zonder die spaties is het dan weer niet zo moeilijk: je hebt slechts een lijst met alle nederlandse woorden nodig. Vervolgens heb je, met de simpelste methode, n! zoekpogingen nodig voor alle anagrammen (dwz letters in andere volgorde die ook in de lijst staan). 

 

Die n! is natuurlijk wel een lastpost voor langere woorden. Bij 6 letters heb je 720 permutaties te doorzoeken. Dat lijkt veel, maar er zijn in de orde van 200.000 nederlandse woorden (als in, entries in de grote Van Dale), voor een computer is dat secondenwerk in het slechtste geval.

 

Bij langere woorden wordt dat een drama, iets van 12 letters heeft ~500 miljoen permutaties, al is het aantal woorden met exact 12 letters natuurlijk een stuk kleiner dan de 200.000 in totaal. 

 

In het 'zonder spaties' scenario lijkt het me zonder meer mogelijk een dergelijke lijst te genereren als je een bestand hebt met alle mogelijke woorden. 

 

Mocht zoiets nog niet bestaan hoor ik het overigens graag, lijkt me een leuk ding op eens uit te proberen om het op te stellen - met de full brunt van een webserver gaat dat een stukje rapper dan op thuiscomputer, en kan ik het op een rustig uur doen waarop het ding toch staat te idlen. 

Victory through technology

#3

Rhiannon

    Rhiannon


  • >1k berichten
  • 3380 berichten
  • Moderator

Geplaatst op 23 augustus 2018 - 09:57

Ik heb nog nooit gehoord over zo'n lijst, maar het lijkt me leuk om dat eens uit te zoeken. Wordt vervolgd.

Hoe minder kennis, des te onwrikbaarder het oordeel.

#4

Math-E-Mad-X

    Math-E-Mad-X


  • >1k berichten
  • 2594 berichten
  • Ervaren gebruiker

Geplaatst op 23 augustus 2018 - 10:31


Die n! is natuurlijk wel een lastpost voor langere woorden. Bij 6 letters heb je 720 permutaties te doorzoeken. Dat lijkt veel, maar er zijn in de orde van 200.000 nederlandse woorden (als in, entries in de grote Van Dale), voor een computer is dat secondenwerk in het slechtste geval.

 

Bij langere woorden wordt dat een drama, iets van 12 letters heeft ~500 miljoen permutaties, al is het aantal woorden met exact 12 letters natuurlijk een stuk kleiner dan de 200.000 in totaal.

 

Het kan veel sneller. Als je twee woorden wil vergelijken hoef je alleen maar voor elk woord de letters in alfabetische volgorde te zetten en dan kijken of je voor beide woorden hetzelfde resultaat krijgt. Dat kan in n log n.

while(true){ Thread.sleep(60*1000/180); bang_bassdrum(); }

#5

Benm

    Benm


  • >5k berichten
  • 11001 berichten
  • VIP

Geplaatst op 23 augustus 2018 - 15:15

Dat zou inderdaad een betere methode zijn, zoals ik probeerde op te merken is het doorzoeken van alle permutaties simplistisch. Zeker voor langere woorden zou dit een forse tijdswinst opleveren (bij 6 letters is de 'domme aanpak' best te doen, bij 12 wat minder). 

 

Het heeft beide echter als nadeel dat je de "geen spaties" regel moet volgen, maar als dat okay is kun je zo een volledige lijst anagrammen van een geleverde woordenlijst vinden/maken. 

Victory through technology

#6

Math-E-Mad-X

    Math-E-Mad-X


  • >1k berichten
  • 2594 berichten
  • Ervaren gebruiker

Geplaatst op 24 augustus 2018 - 12:29

Ik verveelde me dus ben op zoek gegaan naar een lijst met Nederlandse woorden en heb toen een programmaatje geschreven om anagrammen te vinden. Zie het resultaat in de bijlage :)

 

(Het programma deed er iets meer dan een seconde over, op een trage laptop. De oorspronkelijke woordenlijst bevatte 164.313 woorden.)

Bijgevoegde Bestanden

Veranderd door Math-E-Mad-X, 24 augustus 2018 - 12:33

while(true){ Thread.sleep(60*1000/180); bang_bassdrum(); }

#7

Benm

    Benm


  • >5k berichten
  • 11001 berichten
  • VIP

Geplaatst op 24 augustus 2018 - 15:16

Haha, hoe rap techniek kan werken :)

 

Maar wat me nu opvalt is dat de woordenlijst wellicht te klein is: ik neem aan dat je een lijst van lemma's hebt gebruikt, maar niet de vervoegingen, meervouden, verkleinwoorden en dergelijke. Als je die wel hebt krijg je ongetwijfeld veel meer, en grappige, anagrammen. Vraag is waar je die woordenlijst kunt halen - bijvoorbeeld alle woorden die wordfeud goedkeurt in het nederlands. 

Victory through technology

#8

physicalattraction

    physicalattraction


  • >1k berichten
  • 3376 berichten
  • Moderator

Geplaatst op 28 augustus 2018 - 10:58

Haha, ik had vorig jaar hetzelfde gebouwd, en zo te zien precies dezelfde lijst met woorden gevonden, want ik heb er ook 164.313 in mijn woordenlijst!


#9

Benm

    Benm


  • >5k berichten
  • 11001 berichten
  • VIP

Geplaatst op 28 augustus 2018 - 14:41

Maar waar kwam die woordenlijst dan vandaan?

Victory through technology

#10

Math-E-Mad-X

    Math-E-Mad-X


  • >1k berichten
  • 2594 berichten
  • Ervaren gebruiker

Geplaatst op 28 augustus 2018 - 15:44

Ik weet niet meer precies waar hij vandaan kwam, maar ik vond hem na een tijdje googelen.

while(true){ Thread.sleep(60*1000/180); bang_bassdrum(); }

#11

Benm

    Benm


  • >5k berichten
  • 11001 berichten
  • VIP

Geplaatst op 28 augustus 2018 - 17:13

Ah okay, dan zal je vast dezelfde gevonden hebben inderdaad. Ik ben wel benieuwd of er ergens een lijst is met vervoegingen, meervouden, overtreffende trappen en dergelijke erin, dat zou denk ik veel meer (en mogelijk onverwachte) anagrammen opleveren. 

Victory through technology





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures