Lista multipla

Una possibile combinazione di lista multipla è la seguente

  • lista primaria (A-B-C): a doppi puntatori con puntatore di testa e puntatore di coda
  • liste secondarie (p, q-r-s, …): semplici con puntatore di testa e puntatore di coda

image

Dichiarazioni

Type
   tInfoP = "qualsiasi"; {le informazioni nel nodo principale}
   tInfoS = "qualsiasi"; {le informazioni nel nodo secondario}
   pNodoP = ^NodoP;
   pNodoS = ^NodoS;
   NodoP  = Record
      InfoP : tInfoP;
      SuccP ,              {puntatori nelle due direzioni}
      PrecP : pNodoP;
      TestaS,             {puntatori di testa e di coda}
      CodaS : pNodoS;
   End;
   NodoS  = Record
      InfoS : tInfoS;
      SuccS : pNodoS;
   End;
   ListaM = Record
      TestaP,
      CodaP : pNodoP;
   End;