Lista enlazada TDA Clase iteradorLista package listaenlazda; * @author LENOVO public class IteradorLista { NodoLista actual; IteradorLista(NodoLista n){ actual=n; } boolean estaFuera(){ if(actual==null){ return true; }else{ return false; } } Object obtener(){ return actual.elemento; } void avanzar(){ if(!estaFuera()){ this.actual=actual.siguiente; } } } Clase Lista.java package listaenlazda; /** * * @author LENOVO */ public class Lista { NodoLista cabecera; Lista(){ this.cabecera=new NodoLista(null); } boolean estaVacia(){ if(cabecera.siguiente == null){ return true; }else{ return false; } } void insertar(Object o,IteradorLista it){ if(it!=null && it.actual!=null){ it.actual.siguiente=new NodoLista(o,it.actual.siguiente); } } void eliminar(Object o){ IteradorLista it= encontrarPrevio(o); if(it.actual.siguiente!=null){ it.actual.siguiente= it.actual.siguiente.siguiente; } } IteradorLista encontrarPrevio(Object o){ NodoLista nodo= this.cabecera; while(nodo.siguiente!=null && nodo.siguiente.elemento.equals(o)){ nodo=nodo.siguiente; } return new IteradorLista(nodo); } IteradorLista buscar(Object o){ NodoLista nodo= this.cabecera.siguiente; while(nodo!=null && !nodo.elemento.equals(o)){ nodo=nodo.siguiente; } return new IteradorLista(nodo); } } Clase ListaEnlazada.java package listaenlazda; /** * * @author LENOVO */ public class ListaEnlazda { /** * @param args the command line arguments */ public static void main(String[] args) { Lista lista= new Lista(); lista.insertar("Juan ",new IteradorLista(lista.cabecera)); lista.insertar("Werner ",new IteradorLista(lista.cabecera)); lista.insertar("Daniel ",new IteradorLista(lista.cabecera)); lista.insertar("Nehemias ",new IteradorLista(lista.cabecera)); if(lista.estaVacia()){ System.out.print(" Lista Vacia "); } else { System.out.print(" Lista LLena "); } IteradorLista iteradorBuscado =null; iteradorBuscado= lista.buscar("Juan "); if(iteradorBuscado!=null && iteradorBuscado.actual!=null){ System.out.print(iteradorBuscado.obtener().toString()); } else{ System.out.print("Obejto no encontrado"); } //Eliminar lista.eliminar("Juan"); //Buscar iteradorBuscado =null; iteradorBuscado =lista.buscar("Juan"); if (iteradorBuscado!=null && iteradorBuscado.actual!=null){ System.out.print(iteradorBuscado.obtener().toString()); } else{ System.out.print("Objeto no encontrado"); } } } Clase NodoLista.java package listaenlazda; /** * * @author LENOVO */ public class NodoLista { Object elemento; NodoLista siguiente; NodoLista(Object o){ elemento=0; siguiente=null; } NodoLista(Object o, NodoLista n){ elemento=o; siguiente=n; } }