UTNianos

Versión completa: Ayuda, listas
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Muchachos una consulta, alguno me pasa el codigo o diagrama de una función que ordene una lista? Gracias de antemano!
A-B.2+1^x
A es el numero de listas B es el numero de datos y x es una joda
(18-02-2016 17:01)oskar12 escribió: [ -> ]Muchachos una consulta, alguno me pasa el codigo o diagrama de una función que ordene una lista? Gracias de antemano!

como queres ordenar la lista?

struct NodoListaSE
{
int info; // Datos de el nodo
NodoListaSE *sgte; // Puntero al siguiente nodo

};

int ContarNodos(NodoListaSE *lista)
{
int cont=0;
while (lista)
{
cont++;
lista = ObtenerSiguiente(lista);
}
return cont;
}

void burbujaListas(NodoListaSE *&lista)
{
int n,i,j;
NodoListaSE *aux;
NodoListaSE *anterior;
NodoListaSE *proximo;
bool inter; //Para ver si hubo intercambio o no
n= ContarNodos(lista);
for (i=0;i<=n-2;i++)
{
aux= lista;//Arranca desde el principio
for (j=0;j<=n-2-i;j++)
{
if (aux->sgte->info < aux->info)
{
inter= true;
if (aux==lista)
{
lista= aux->sgte;
proximo= lista->sgte;
lista->sgte=aux;
aux->sgte=proximo;
}
else
{
anterior=BuscarNodoAnterior(lista,aux);
proximo=aux->sgte;
anterior->sgte= proximo;
aux->sgte= proximo->sgte;
proximo->sgte= aux;
}
}
else
inter=false;
if (!inter)
{
aux= aux->sgte;
}
}
}
return;
}


Ese es el código que en su momento nos dio a nosotros el profesor que teníamos. Espero que te sirva, suerte!
URLs de referencia