Discussione: [C++]Liste
View Single Post
Old 16-10-2003, 17:16   #8
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Cittā: Vigevano(PV)
Messaggi: 2124
Quote:
Originariamente inviato da cionci
Nell'implementazione classica non c'č... Il remove dell'implementazione classica taglia il primo nodo trovato con un dato valore...

Parti da questo:
Codice:
struct list {
   int info;
   list *next;
};

Codice:
 
#include <iostream>
#include <string>
#include <cmath>
#include <cstdio>

using namespace std;
// Liste bilaterale
typedef struct SList
{
    int irq;
    SList *next;
    SList *prev;    
}Lista;

int main( )
{
    Lista prima, seconda, terza, quarta, quinta;
    /* definisco */
    prima.irq = 9;
    seconda.irq = 8;
    terza.irq = 7;
    quarta.irq = 6;
    quinta.irq = 5;
    /* concateno creando la lista*/
    prima.next = &seconda;
    prima.prev = NULL;
    // ----------
    seconda.next = &terza; 
    seconda.prev = &prima;
    // ----------
    terza.next = &quarta;
    terza.prev = &seconda;
    // -----------
    quarta.next = &quinta;
    quarta.prev = &terza;
    // -----------
    quinta.next = NULL; // ultimo anello nullo, cosi la lista e finita
    quinta.prev = &quarta;
    Lista *primoel = &prima;
    // stampa
    Lista *cercare = primoel;
    const unsigned indicenodo = 4;
    for( unsigned i=0; i < indicenodo; i++ )
    {
       cercare = cercare->next;    
    }
    cout << cercare->irq << "\n"; 
    system( "PAUSE" );
    return 0;
}
Luc@s č offline   Rispondi citando il messaggio o parte di esso