Problema_listemonodirezionali in un vettore di struct..

di il
2 risposte

Problema_listemonodirezionali in un vettore di struct..

Salve volevo una mano in questa parte di codice.
il programma dovrebbe ricevere in input la dimensione del vettore e dei dati(stringhe).
dove dovrò assegnare gli indici dei successivi in ordine alfabetico ..
io l'ho pensata cosi...creerò una copia delle stringhe assegnate dell'utente in un altro vettore di struct chiamata lista2...una volta creata la copia eseguirò l'ordinamento alfatico di tutto il vettore di struct delle lista2. successivamente per assegnare i giusti indici percorrerò tutta la lista2 con il for dove confronterò il successivo dell'elemento della lista2 con tutti gli elementi della lista originale ,quando troverò che sono uguali assegnerà l'indice z(ovvero la posizione dell'elemento della lista originale )con l'indice della lista2 corrente..vi prego aiuto


//procedura di assegnamento indici alla lista2
for(i=0;i<DIM;i++){
v=0;
z=0;
while(v!=1){
if(i==DIM-1){
lista2.next=-1;
}else if(strcmp(lista2[i+1].dato,lista[z].dato)==0){
lista2.next=z;

v++;
}else{
z++;}
}
}





a dimenticavo la dichiarazione di struct è cosi:
typedef struct {
char dato[6];
int next;
}pers;
pers lista[size];
pers lista2[size];

2 Risposte

  • Re: Problema_listemonodirezionali in un vettore di struct..

    Ad essere sincero, non ci ho capito nulla.

    Fra l'altro, il primo dubbio mi viene sul campo next della lista che dovrebbe essere un puntatore alla struttura ...
  • Re: Problema_listemonodirezionali in un vettore di struct..

    Grazie per la tua risposta oregon!cmq ho risolto!
    si ,lo so che dovrebbe essere *ptr alla struct XD solo che il mio insegnate voleva che venisse gestita
    senza introdurre il concetto di ricorsione..immaginata in un vettore di strutture dove gli indici dei successivi fanno riferimento a alle posizioni del vettore
Devi accedere o registrarti per scrivere nel forum
2 risposte