PDA

Visualizza la versione completa : [c++] liste, piccolo esercizio


Pised
11-02-2008, 17:20
Ciao a tutti, torno a chiedere aiuto per la realizzazione di un piccolo esercizio.

Allora avendo una funzione che riceve in ingresso una lista contenente caratteri e una seconda lista contenente numeri interi ordinati in modo crescente, devo far si che la funzione restituisca una terza lista contenente solo i caratteri della prima lista(caratteri) che occupano una posizione definita nella seconda lista(numeri interi).

esempio:
lista A: a,c,d,r,t,y,f,d
lista B: 3,5,6,8
lista in uscita:d,t,y,f,d

ora a parte la creazione della terza lista, a livello di logaritmo come individuo quali hanno una corrispondenza? Grazie fin da subito per la cortesia :)

oregon
11-02-2008, 17:30
A livello di logaritmo?

Forse intendevi "algoritmo" ...

Hai impostato il codice ? Mostra quello che hai scritto ... si tratta solamente di scorrere la prima lista secondo il numero di volte presente in ogni elemento della seconda, partendo sempre dall'inizio.

Pised
11-02-2008, 17:37
eheh scusami esami e pensieri vari! non ho ancora steso il codice, da quanto pensavo infatti potrei usare un ciclo for, ma cosa intendi per partendo sempre dall'inizio? grazie mille per la risposta

XWolverineX
11-02-2008, 18:20
ora a parte la creazione della terza lista, a livello di logaritmo come individuo quali hanno una corrispondenza?

Non ho capito questo pezzo.

XWolverineX
11-02-2008, 18:26
Comunque piu' o meno una cosa del genere



char lettere[] = { 'a','c','d','r','t','y','f','d' };
int indici[] = { 3,5,6,8 };

char vettore[sizeof(indici)/sizeof(int)];

for ( int i = 0; i < sizeof(indici)/sizeof(int);i++)
{
vettore[i] = lettere[indici[i]];
}
//Fatto.

Pised
12-02-2008, 08:43
si come detto volevo dire "algoritmo" nel messaggio.

Grazie per la tua soluzione, ma in questo modo dovrei passare le due liste in array giusto come hai fatto nel tuo esempio?

Pised
12-02-2008, 10:59
nessun'altro pu darmi una mano? ;) grazie

oregon
12-02-2008, 11:12
Mostra il codice con la creazione della lista ...

Pised
12-02-2008, 13:32
Oregon non ho ancora scritto codice, l'inserimento nella lista non va scritto nell'esercizio, va solo realizzata la funzione che riceve la lista in ingresso(in ogni caso per l'inserimento farei nel caso un normale inserimento in coda o in testa). Quello che mi interessa sapere come realizzare il controllo sulle due liste, con un for ok, ma non riesco a mettere giu il codice. Grazie :)

oregon
12-02-2008, 17:58
La cosa dipende (almeno) da come e' fatto il singolo nodo della lista ... questo almeno lo hai scritto?

Loading