1 / 4

Listas Enlazadas

Listas Enlazadas. r. x. x. x. x. 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.

hasana
Download Presentation

Listas Enlazadas

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Listas Enlazadas r x x x x 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. a a a a

  2. Listas Enlazadas • Para entender mejor el concepto de las listas enlazadas veamos el siguiente ejemplo: Variables Objetos 1010 2030 p Nododatosig Nododatosig Nododatosig Nododatosig 2505 Realizar un código Java para implementar la estructura de la grafica. Suponga que la clase «Nodo» existe q 1010 9 3 7 4 3033 null 2030 2505 2505 3033

  3. 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); } }

  4. Código 2 (con ciclo) • public class Principal { • public static void main (String…) { • Nodo p = null; • Nodo q = null; • int d = 0; • for (int i = 0; i < 4; i++) { • d = Leer.entero (‘ ‘digite dato’ ’); • if (q == null) { • p = q = new Nodo(d, null); • } else { • p.setSig(new Nodo(d, null )); • p = p.getSig( ); } • } • } • } 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.

More Related