View Single Post
Old 05-07-2007, 17:54   #1
cletopolonia
Senior Member
 
Iscritto dal: Nov 2004
Città: Camelot
Messaggi: 691
Algoritmi - scelta struttura dati

ragazzi devo fare 1 progettino per l'esame di algoritmi..

Il problema.
Ho un negozio di caramelle, e devo gestire i contenitori che hanno:
- nome es. rosso
- una stringa es. r=rotonde q=quadrate l=lunghe c=corte

Dunque un contenitore è fatto così:
Rosso rrrqlll (ma potrebbero essere infinite...) e l'ordine è importante..
il contenitore di nome rosso contiene 3 caramelle rotonde, 1 quadrata e 3 lunghe.

teniamo presente che nel negozio ci sono 4 scatole così composte:
blu: lcc
rosso: lqccc
giallo: qlcc
nero: lqcllqc

e la tabella che segue rappresenta il grado di somiglianza della sequenza iniziale tra i contenitori.
-----------------
- - b | r | g | n |
-----------------
b | 3 | 1 | 0 | 1 |
-----------------
r | 1 | 5 | 0 | 3 |
-----------------
g | 0 | 0 | 4 | 0 |
-----------------
n | 1 | 3 | 0 | 7 |
-----------------


oltre alle solite operazioni di stampa, inserimento e cancellazione devo gestire 2 tip di ricerca:
1. ricerca x nome dei contenitori.
2. ricerca per sequenza di caramelle.

es.1) stampa tutti i treni con grado di somiglianza = 1 rispetto alla scatola blu
istruzione: ricerca 1 blu

es.2) ricerca tutti i contenitori che hanno 3 caramelle rotonde
come sequenza iniziale.
istruzione: ricerca rrr

considerando che si devono gestire grandi quantità di dati dovrei ottimizzare l'uso dello spazio per la memorizzazione dei contenitori.

Sapreste aiutarmi sulla scelta della struttura dati??
- grafi
- lista (sconsigliata)
- alberi binari di ricerca
- alberi 2-3
- alberi 2-3-4
- alberi red-black
- etc..

vi ringrazio in anticipo e confdo in voi perchè io non so cosa scegliere...
__________________
Ho concluso affari con: thefire1960 - murakami - dr.gazza - teo ssj - Mr.X - Gangerik - dreamtommino - Flipper - Djmarcograndi - thejudgeTnT - CubeDs

Ultima modifica di cletopolonia : 05-07-2007 alle 17:56.
cletopolonia è offline   Rispondi citando il messaggio o parte di esso