¿Ayuda con listas enlazadas?

Iniciado por BrendiisFox, 3 Septiembre 2015, 19:05 PM

0 Miembros y 1 Visitante están viendo este tema.

BrendiisFox

Buen día a todos!
Estoy rezando un proyecto con listas enlazadas simples en c++, pero tengo algunas dudas al momento de insertar en medio de la lista. El trabajo me pide que inserte al principio, enmedio y final un determinado dato que ingrese el usuario pero por mas que pruebe no logro ingresar enmedio.

Les adjunto lo que llevo hasta ahorita y les agradeceria mucho si me ayudan a salir de este apuro.

Código (cpp) [Seleccionar]

void InserteAlInicio(ListaSimple &ls, int dato){
system("CLS");
cout<<"\n";
cout<<"Ingrese numero de inicio: ";
cin>>dato;
cout<<"\n";
ListaSimple valor;
valor = new(struct nodo);
valor->numero = dato;
valor->puntero = ls;
ls = valor;
}



void InserteEnmedio(ListaSimple &ls, int dato){
system("CLS");
cout<<"\n";
cout<<"Ingrese numero de en medio: ";
cin>>dato;
cout<<"\n";
ListaSimple valor, valor2;
valor = new(struct nodo);
valor->numero = dato;
valor->puntero = valor2->puntero;
valor2->puntero = valor;
ls = valor;
}

void InserteAlFinal(ListaSimple &ls, int dato){
system("CLS");
cout<<"Ingrese numero de final: ";
cin>>dato;
ListaSimple valor, valor2;
valor = new(struct nodo);
valor->numero = dato;
valor->puntero = ls;
valor->puntero = NULL;

if(ls==NULL){
ls = valor;
}else{
valor2 = ls;
while(valor2->puntero!=NULL){
valor2 = valor2->puntero;
}
valor2->puntero = valor;
}
}