Generare un algoritmo per risolvere il problema dato.
Dato un array bidimensionale di caratteri, stampa tutte le parole valide che possono essere formate nell'array.
Passo 1: Attraversa la matrice 2D e crea un albero trie di tutte le possibili parole.

Passo 2: Partendo dal carattere in alto a sinistra, esegui una ricerca in profondità per tutte le parole valide.

Passo 3: Per ogni attraversamento, controlla se il carattere corrente è presente nell'albero trie.

Passo 4: Se il carattere è presente, segna il carattere come visitato e aggiungilo alla parola corrente e vai ricorsivamente attraverso tutti i suoi vicini.

Passo 5: Se il carattere non è presente nell'albero trie, segnalo come non visitato e ritorna.

Passo 6: Se il carattere corrente forma una parola valida nell'albero trie, stampala.

Passo 7: Continua la ricerca con gli altri caratteri fino a quando l'intera matrice non è stata attraversata.