Ciao ^^ , scusami io lo farei in un modo un pò più semplice. Quando crei l' algoritmo dell' inserimento in una lista, lo crei in modo tale che si venga a formare una lista ordinata ( quindi senza nessuna politica LIFO O FIFO ) . E poi per inserire una lista in un' altra basterà nel main chiamare la funzione inserimento nel quale gli passi i valori dell' altra lista.
inserimentoLista( L & l , const int valore ) {
if ( l == 0 )
{
l = new Tipo; // ovviamente tipo sta per quello che ti serve
l->val = valore;
l->next = 0 ;
}
else if ( l->val <= valore )
inserimentoLista( l->next, valore );
else
{
L p = new Tipo;
p->next = l;
l = p;
l->val = valore;
}
}
Questo dovrebbe andare bene per l' inserimento di una lista ( l' ho fatto stesso nel forum non ti so dire xD )
Nel main invece potresti fare in questo mod o
L lista1,lista2;
int valore;
for ( int i= 0 ; i < 5 ; i++ )
{
cin >> valore;
inserimentoLista( lista1, valore ) ;
}
L currentpunt = lista1;
while ( currentpunt != 0 )
{
inserimentoLista( lista2, currentpunt->val ) ;
currentpunt = currentpunt->next;
}
return 0
}