Matrici e stringhe

di il
4 risposte

Matrici e stringhe

Sono un neofita della programmazione, vi propongo un esercizio che mi ha creato qualche difficoltà:
scrivere una funzione che prenda come argomento una matrice M formata da lettere e una lista di parole. La funzione dovrà restituire quante parole della lista compaiono nelle righe e nelle colonne di M . Se una parola è contenuta più volte basterà conteggiarla una sola volta.
Mi sono un po' impantanato, mi proporreste una soluzione valida,magari che faccia minor uso possibile di funzioni built-in. Per essere più chiaro:

M=[[ 'a' , 'm' , 'o' , 'z' , 'c' ],
[ 'm' , 'g' , 'a' , 'i' , 'a'],
[ 'o', ,' r' , 's' , 'o' , 's' ],
[ 'c' , 'a' , 's' , 'a' , 'a' ]]

words= ["casa","zio","tetto","parco", "orso", "palla","gaia", "amo"]
la funzione restituirà 5, poiché 5 parole della lista sono contenute nella matrice.

4 Risposte

  • Re: Matrici e stringhe

    A me vengono in mente due possibili modi per risolvere:
    1) ti crei un elenco di tutte le possibili parole dalla matrice e poi verifichi quante parole ricercate ha.
    2) cerchi la prima lettera della parola nella matrice. Se c'è verifichi se nell'intorno c'è anche la seconda lettera. Se c'è puoi definire la direzione della parola in ricerca sulla quale verifichi che ci sia la terza lettera, la quarta e così via.

    La soluzione 1 è abbastanza semplice da sviluppare, la 2 è più stimolante.
  • Re: Matrici e stringhe

    Grazie per il suggerimento!
    Supponendo di voler utilizzare il secondo metodo che hai proposto, sarebbe utile creare un indice che scorre tutte le lettere della matrice per poi confrontarlo con la parola nella lista? Sto provando a impostare dei ragionamenti e ho individuato il problema, purtroppo sto avendo parecchie difficoltà nel "tradurre" questi ragionamenti in codice.
  • Re: Matrici e stringhe

    Ma scusa, crea le m+n parole (2m+2n se vuoi anche il senso inverso) e vedi quali words sono sottostringhe di almeno una parola.

    Proponi qualcosa, almeno la concatenazione dei caratteri...
  • Re: Matrici e stringhe

    Grazie per i suggerimenti. Ragionandoci su ho risolto i vari problemi.
Devi accedere o registrarti per scrivere nel forum
4 risposte