[ Foro de C ]

Eliminar un elemento repetido o no en una lista enlazada simple.

24-Oct-2012 05:40
Luis Torres (+18)
1 Respuestas

Profesor Nacho Cabanes, ¿me podría ayudar a realizar un sub-programa para eliminar un elemento, repetido o no, en una lista enlazada simple?. Se trata de un función a la que se le pase el elemento a eliminar, y se debe quitar este elemento y sus repitencias en la lista enlazada. La lista NO ESTA ORDENADA. Un ejemplo podría ser el siguiente:
Si tenemos una lista enlazada simple con estos nodos:
4 2 7 1 7 2 8 9 4 7 4
y, me piden eliminar el valor 4, la lista deberá quedar así:
2 7 1 7 2 8 9 7
Un afectuoso saludo, profesor.


27-Nov-2012 14:17
Nacho Cabanes (+83)

Estoy de vuelta.

Si todavía tienes que realizar este ejercicio, sería de ayuda ver el código que ya tienes realizado, para que la implementación que te proponga no sea muy distinta de la que "esperan".

En cualquier caso, el pseudocódigo es sencillo:

Desde la primera posición de la lista a la última
-- Si dato = datoBuscado
---- Eliminar dato

(es decir, debes recorrerla de principio a fin, al no estar ordenada).






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)