ACTIVIDAD 4
Listas Simplemente Ligadas
1. Elabore un método que reciba la dirección del primer nodo de una lista y un dato, borre de la lista todos los datos iguales al recibido.

2. Elabore un método que reciba un número entero N y forme una lista con cada uno de los dígitos del número.
Entregables: *
- Los algoritmos
- Prueba de Escritorio
- Diseñar un programa en uno de los lenguajes que manejen hasta el momento
Algoritmo y Prueba de Escritorio
Programa en Java
Clase Nodo:
package Actividad4;
public class Nodo {
int dato;
Nodo siguiente;
public Nodo (int dato) {
this.dato = dato;
this.siguiente = null;
}
}
Clase ListaEnlazada:
package Actividad4;
public class ListaEnlazada {
private Nodo primero;
private int size;
public ListaEnlazada () {
this.primero = null;
this.size = 0;
}
public void ListaVacia () {
if (primero == null) {
System.out.print ("La lista está vacía");
}else {
System.out.print ("La lista tiene datos");
}
}
public void addNodo (int dato) {
Nodo nuevo = new Nodo (dato); //Se añade nodo
nuevo.siguiente = primero; // ir a primer nodo
primero = nuevo; //inserta nodo de primero
size++;
}
public int size () {
return size;
}
public void Listar() {
Nodo actual = primero;
while (actual != null) {
System.out.print ("["+ actual.dato +"]->");// se llama atributo dato tipo entero
actual = actual.siguiente; //el nodo actual es = actual y pasa a nodo siguiente
}
}
public void eliminarRepetido() {
Nodo aux=primero;
Nodo actual = primero;
while (actual != null) {
if (actual.siguiente != null && actual.dato == actual.siguiente.dato) {
actual = actual.siguiente;
actual = actual.siguiente;
}else {
aux.siguiente = actual;
aux = aux.siguiente;
actual = actual.siguiente;
}
}
}
public static void main (String[] args) {
ListaEnlazada lista = new ListaEnlazada();
lista.ListaVacia();
System.out.println ("");
lista.addNodo(10);
lista.addNodo(20);
lista.addNodo(10);
lista.addNodo(10);
lista.addNodo(50);
lista.addNodo(10);
lista.Listar();
System.out.println ("tamaño: "+lista.size());
System.out.println ("");
lista.ListaVacia();
}
}
Fuentes Bibliográficas:
-Vida MRR - Diseño y desarrollo web. (2019, 9 mayo). Listas enlazadas: eliminar duplicados [Vídeo]. YouTube. https://www.youtube.com/watch?v=uIFwYGKV6IE
-Pablo Ortiz. (2019, 27 febrero). Elimina nodos repetidos en lista doble en Java [Vídeo]. YouTube. https://www.youtube.com/watch?v=JUmRzYI8mtk
-Java ------- Elimine los nodos duplicados en la lista enlazada individualmente (siempre que esté en orden) - programador clic. (2020). programmerclick.com. https://programmerclick.com/article/97461417901/