Upload
sarita-vera
View
109
Download
1
Embed Size (px)
Citation preview
LISTAS ENLAZADAS
No son mas que un conjunto o lista de objetos que a diferencia de los vectores, estas poseen la capacidad de crecer o decrecer.
Por ser dinámicas pueden crear nodos nuevos o borrar alguno ya creado, liberando de esta manera espacio en memoria.
otra cosa para tener en cuenta es que para poder llegar hasta un objeto, primero se debe pasar por una variable de referencia como mínimo que contenga la dirección del objeto.
ra
xa
x
a
xa
x
Para entender mejor el concepto de las listas enlazadas veamos el siguiente ejemplo:
LISTAS ENLAZADAS
Variables Objetos
Nododatosig
7
2030
Nododatosig
4
2505
Nododatosig
9
3033
Nododatosig
3
null
2505
1010
p
q
1010
2505 3033
2030 Realizar un código Java para implementar la estructura de la grafica. Suponga que la clase «Nodo» existe
CÓDIGO 1 public class Principal {
public static void main (String…) { Nodo p = null; Nodo q = null; p = new Nodo( ); p.setDato(7); p = new Nodo( ); q.setSig(p); p.setDato(4); p.setSig(new Nodo( )); p = p.getSig( ); p.setDato(9); p.setSig(new Nodo ( )); P = p.getSig( ); p.setDato(3);}
}
CÓDIGO 2 (CON CICLO)
Vale aclara que esta doble asignación que se hace en esta línea no es posible realizarla en Java, solo es para ilustración.
Nota: es importante tener claro que en Java no se pueden escribir direcciones de memoria y asignarlas a una variable, ya que nosotros como programadores no conocemos las direcciones de memoria; y si así fuera el caso, de cualquier manera cuando creáramos el objeto no sabríamos en cual de estas direcciones se va a crear el objeto.