Liste c++

di il
3 risposte

Liste c++

Salve a tutti...mi rivolgo a voi per un dubbio sulle liste concatenate, ho letto una sequenza di interi tramite inserimento in coda,
struct nodo
{
    int info; //parte informativa.
    nodo *next;//puntatore al prossimo nodo.
};

void InsInTesta(nodo *&il,nodo *nuovo); //se la lista è vuota
void InsInCoda (nodo *&il,nodo *nuovo); 
void Stampa(nodo *il);
void LeggiInfo(nodo *nuovo); //legge parte informativa
void DistruggiLista(nodo *&il);
e ora mi chiedevo se è possibile utilizzare lo stesso metodo per leggere una matrice non conoscendo la dimensione. però non capisco poi come possa a fare a stabilire quando è finita una riga, e poi come stampare la matrice corrispondente. Cioè posso leggere e stampare una matrice senza conoscere il numero di righe e di colonne così come per un "vettore" tramite una lista concatenata? Se qualcuno può aiutarmi , in ogni caso grazie .

3 Risposte

  • Re: Liste c++

    No, per la matrice devi conoscerne le dimensioni
  • Re: Liste c++

    Esistono delle strutture dati dedicate per la rappresentazione di vettori o matrici sparse.

    Un vettore sparso o una matrice sparsa e' un vettore o una matrice di grandi dimensioni (1000 elementi, o anche 1.000.000 o piu') in cui, pero', la maggior parte degli elementi vale 0.

    In questo caso, non e' molto efficiente allorare lo spazio per l'intero vettore o l'inter matrice. Ma quello che si fa e' allocare solo lo spazio per gli elementi diversi da zero.

    Ma come identificare tali elementi?
    Banale: nel caso di un vettore, l'elemento sara' una struttura dati del tipo:

    struct velem { int i; double v; };

    nel caso di una matrice:

    struct melem { int r,c; double v; };

    Ora, usare una lista per tenere traccia degli elementi diversi da zero, non e' molto efficiente, ma per una prima implementazione di studio potrebbe essere un buon punto di partenza.
    Tra l'altro non hai neanche la necessita' di sapere quanto e' grande la matrice (o il vettore).
  • Re: Liste c++

    Quindi e' possibile leggere matrici senza conoscere le dimensioni ma non come pensavo io... esistono specifiche procedure a quanto ho capito cercando un po' sul web matrici sparse .....
    se può servire a qualcuno (http://fabaffa.iobloggo.com/35) grazie mille per la disponibilità
Devi accedere o registrarti per scrivere nel forum
3 risposte