LISTAS DOBLEMENTE LIGADAS Y LISTAS CIRCULARES

Páginas: 4 (833 palabras) Publicado: 1 de junio de 2015


**************///////
Listas circulares dobles

La lista circular doble es una especie de lista enlazada  “doblemente enlazada”, pero que posee una característica adicional para el desplazamientodentro de la lista, “ésta no tiene fin”  y tiene 2 apuntadores a sí misma.

Para que la lista sea sin fin, el puntero siguiente del último elemento apuntará hacia el 1er elemento y  el punteroanterior del primer elemento apuntara hacia el último elemento de la lista en lugar de apuntar al valor NULL, como hemos visto en el caso de listas enlazadas simples o doblemente enlazadas.
En las listascirculares dobles, nunca se llega a una posición en la que ya no sea posible desplazarse.
Cuando se llegue al último elemento, el desplazamiento volverá a comenzar desde el primer elemento.

Lasoperaciones básicas de una lista circular doble   son:
·    Insertar: inserta un nodo con dato x en la lista, pudiendo realizarse esta inserción al principio o final de la lista o bien en orden.·    Eliminar: elimina un nodo de la lista, puede ser según la posición o por el dato.
·    Buscar: busca un elemento en la lista.
·    Localizar: obtiene la posición del nodo en la lista.
·    Imprimir: imprime loselementos de la lista.



Nodo principal
public class Nodo {
       private Integer dato;
       private Nodo anterior;
       private Nodo siguiente;
   
}

Método Insertar al iniciopublic void insertarInicio(Integer d){
         Nodo nuevo=new Nodo(d);
         if(inicio==null)
                   inicio=nuevo;
         else{
                   Nodo aux=inicio;                   while(aux.getSiguiente()!=inicio)
                            aux=aux.getSiguiente();
                   aux.setSiguiente(nuevo);
                   nuevo.setAnterior(aux);
                   nuevo.setSiguiente(inicio);
                  inicio.setAnterior(nuevo);
                   inicio=nuevo;
                  
         }
       }
 Método insertar al final
      
public void insertarFinal(Integer d){...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Listas Circulares Doblemente Enlazadas
  • Listas circulares
  • listas doblemente ligadas
  • Lista Ligada
  • Lista doblemente circular2
  • Implementacion de listas doblemente enlazadas
  • Listas doblemente enlazadas
  • Listas doblemente enlazadas

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS