PDA

Visualizza la versione completa : [C] Aiuto decodifica codice morse con alberi


thefiery77
16-07-2016, 19:41
Dovrei decodificare una stringa scritta in codice morse utilizzando un albero binario ma non riesco a capire come impostare il programma. Qualche suggerimento?

oregon
16-07-2016, 20:50
L'inizio di un albero del genere non ti aiuta?



. E
. I - A
. S - U . R - W

thefiery77
16-07-2016, 21:06
L'inizio di un albero del genere non ti aiuta?



. E
. I - A
. S - U . R - W

dovrei creare una struct così:
struct albero{
struct albero *right;
struct albero *left;
char morse[10];
}

??

oregon
16-07-2016, 21:09
Non ci siamo capiti ... l'informazione che porta ogni nodo è di un solo carattere .... perché 10 ?

thefiery77
16-07-2016, 21:18
Non ci siamo capiti ... l'informazione che porta ogni nodo è di un solo carattere .... perché 10 ?

perché le lettere in morse non hanno solo un carattere tipo la k ne ha 3 se non sbaglio e vanno e crescere fino allo 0

oregon
16-07-2016, 21:55
perché le lettere in morse non hanno solo un carattere tipo la k ne ha 3 se non sbaglio e vanno e crescere fino allo 0

Allora non ci siamo capiti ...

Se hai il codice morse

..-

per ottenere la lettera attraversa l'albero dall'inizio e spostati in maniera opprtuna

.
a sinistra per il prossimo .
a destra per la prossima linea dove trovi U

che è la lettera che cercavi

thefiery77
16-07-2016, 22:42
Allora non ci siamo capiti ...

Se hai il codice morse

..-

per ottenere la lettera attraversa l'albero dall'inizio e spostati in maniera opprtuna

.
a sinistra per il prossimo .
a destra per la prossima linea dove trovi U

che è la lettera che cercavi

ah ho capito. Quindi nella struct non è necessario mettere il char? Perché tecnicamente se trova il punto va a sinistra se il meno a destra. Giusto?

oregon
17-07-2016, 08:24
ah ho capito. Quindi nella struct non è necessario mettere il char? Perché tecnicamente se trova il punto va a sinistra se il meno a destra. Giusto?

Il carattere che metti nella struttura è la lettera del nodo, ad esempio la U !

thefiery77
17-07-2016, 10:23
Il carattere che metti nella struttura è la lettera del nodo, ad esempio la U !

giusto, scusami era scontato ma ieri stavo in pizzeria e non ci avevo pensato. Comunque l'albero lo devo creare manualmente (nel senso mettere le lettere ad una a una) o c'è un modo più automatico?

oregon
17-07-2016, 13:00
giusto, scusami era scontato ma ieri stavo in pizzeria e non ci avevo pensato. Comunque l'albero lo devo creare manualmente (nel senso mettere le lettere ad una a una) o c'è un modo più automatico?

Beh ... se per manualmente intendi che devi inserire tu le lettere corrispondenti, mi sembra ovvio.

Puoi usare un vettore opportunamente in ordine da scorrere per inserire i dati nell'albero con una funzione creata ad hoc.

Loading