Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Rhessus en 18 Julio 2016, 03:09 am



Título: Algoritmo de ordenamiento para listas enlazadas [C]
Publicado por: Rhessus en 18 Julio 2016, 03:09 am
Hola a todos.
Continuando con la agenda en C, ahora estoy buscando la forma de ordenar alfabéticamente los contactos (utilizando únicamente las librerías stdio.h, stdlib.h y string.h). Investigué sobre el tema, y reconozco que aprendí algoritmos básicos de ordenamiento que desconocía: ordenamiento burbuja, de inserción, etc. Al parecer, el que resulta más conveniente para listas enlazadas es el de ordenamiento por mezcla. Sin embargo, vuelvo a chocarme contra la pared: por más que intento, no encuentro la forma de "convertirlo" al caso (todos los ejemplos que encuentro son con elementos de una lista, y no con listas enlazadas; en otros casos, son códigos de otro lenguaje).
¿Alguien podría guiarme?
Muchas gracias por su tiempo. Saludos.


Título: Re: Algoritmo de ordenamiento para listas enlazadas [C]
Publicado por: AlbertoBSD en 18 Julio 2016, 03:16 am
Hola un tema similar lo discutimos aqui

https://foro.elhacker.net/programacion_cc/ordenar_lista_simplemente_enlazada_en_lenguaje_c-t454743.0.html

Y adicionalmente realice un video al respecto usando burbuja

cKu-_W5UBpg

Y para adaptar el if solo cambias por strcmp y te devuelve -1 si es menor y +1 si es mayor

Saludos


Título: Re: Algoritmo de ordenamiento para listas enlazadas [C]
Publicado por: Rhessus en 18 Julio 2016, 03:46 am
Sos un genio, Alberto.
¡Muchísimas gracias!


Título: Re: Algoritmo de ordenamiento para listas enlazadas [C]
Publicado por: AlbertoBSD en 18 Julio 2016, 04:49 am
Aclarando que no es el mejor algoritmo de ordenamiento.

Seria bueno que trataras de implentar otro como quicksort o alguno de los que mencionas.

Saludos


Título: Re: Algoritmo de ordenamiento para listas enlazadas [C]
Publicado por: Rhessus en 18 Julio 2016, 06:38 am
Sí, leí eso en varios sitios. A partir de tu ejemplo del ordenamiento de burbuja voy a intentar con otros algoritmos.
Gracias!


Título: Re: Algoritmo de ordenamiento para listas enlazadas [C]
Publicado por: Rhessus en 18 Julio 2016, 06:39 am
Por cierto: excelente video  ;-)
Voy a visitar tu canal más seguido.