Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Sanojen etsiminen Javalla

Macro [12.05.2011 17:36:35]

#

Terve

Ajattelin kokeilla, että miten Javalla onnistuisi tehdä ohjelma, joka etsisi kirjainkasasta sille annetut sanat. Esimerkiksi seuraavasta sokkelosta sen pitäisi löytää sanat EU, UUSI, KUUSI, AASI ja AUTO.

AFGSABBÅEU
UUSIARFFEY
TJKDSFDMÖO
ORGDIKUUSI

Millaista systeemiä kannattaisi suunnitella? Mikä olisi järkevin, nopein ja luotettavin tapa löytää sanat tuolta?

Sanat voivat esiintyä vaaka- tai pystysuunnassa, vinosti, etu- tai takaperin.

Grez [12.05.2011 17:38:48]

#

Riippuen kumpaa on enemmän, sanoja vai ruudukolla kokoa, niin voisi käydä joko jokaisen sanan läpi ja tutkia löytyykö ruudukosta tai muodostaa ruudukosta löytyvät pätkät ja katsoa onko ne sanoja.

Antti Laaksonen [13.05.2011 00:02:45]

#

Yksi tapa on tehdä metodi, jolla voi tarkistaa, onko tietty sana ruudukossa tietystä kohdasta alkaen tietyn suuntaisena. Tämän jälkeen riittää käydä läpi kaikki sanat, kaikki aloituskohdat ja kaikki suunnat.

Esimerkiksi jos haettava sana on OSA ja tutkittava aloituskohta on (2, 2), metodi kokeilee kaikkia seuraavia suuntia:

??A?? ????A ????? ????? ????? ????? ????? A????
??S?? ???S? ????? ????? ????? ????? ????? ?S???
??O?? ??O?? ??OSA ??O?? ??O?? ??O?? ASO?? ??O??
????? ????? ????? ???S? ??S?? ?S??? ????? ?????
????? ????? ????? ????A ??A?? A???? ????? ?????

Jos jossain kohdassa ruudukon kirjaimet vastaavat sanan kirjaimia, sana on löytynyt ruudukosta.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta