viernes, 2 de mayo de 2014

Listadoble

import java.util.Scanner;
class Nodo{
int elemento;
Nodo siguiente;
Nodo anterior;
public Nodo (int x)
{
elemento=x;
siguiente=null;
anterior=null;
}
}
public class Listadoble {
     
    /**
     * Creates a new instance of <code>Listadoble</code>.
     */
     private static Nodo frente=null, fin=null;
    public Listadoble() {
    }
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int  opcion;
   
      Scanner ent=new Scanner(System.in);
   
      do
      {
      System.out.println("1) Insertar");
      System.out.println("2) Eliminar");
      System.out.println("3) Presentar");
      System.out.println("4) Reversa");
      System.out.println("5) Limpiar");
      System.out.println("6) Salir");
      opcion=ent.nextInt();
      switch (opcion)
         {
     
      case 1 : Insertar();
      break;
        case 2 : Eliminar ();
      break;
      case 3 : Presentar();
      break;
      case 4 : Reversa ();
      break;
      case 5 : Limpiar ();
      break;  
      case 6 : break;
      default : System.out.println("Opción equivocada");
      break;
         }      
        } while(opcion !=6);
    }
 
    public static void Insertar ()
    {
    Scanner ent=new Scanner(System.in);
    int valor;
    Nodo aux;
   
    System.out.print("Ingrese el dato");
      valor=ent.nextInt();
      aux=new Nodo(valor);
      if (frente==null)
      {
     
      frente=aux;
      }
      else
      {
     
         fin.siguiente=aux;
      aux.anterior=fin;
     
      }
      fin=aux;
   
    }
    // Método para ELIMINAR UN ELEMENTO

    public static void Eliminar()
    {
        Nodo aux;
       
         if (frente==null)
      System.out.println("Lista vacía");
      else
      {
            if(frente==fin)
                      frente=fin=null;
               else
                   {
                      aux=fin.anterior;
                      fin.anterior=null;
                      aux.siguiente=null;
                      fin=aux;
                    }
           
            }
           
     
       
    }
    //Método para PRESENTAR LOS ELEMENTOS DE UNA COLA CIRCULAR

   public static void Presentar()
    {
    Nodo aux;
     if (frente==null)
      System.out.println("Lista vacía");
     else
        for (aux=frente; aux!=null;)
        {
        System.out.println("Elemento: "+aux.elemento);
        aux=aux.siguiente;
        }  
   
    }
    public static void Reversa()
    {
    Nodo aux;
     if (frente==null)
      System.out.print("Lista vacía");
     else
        for (aux=fin; aux!=null;)
        {
        System.out.println("Elemento: "+aux.elemento);
        aux=aux.anterior;
        }  
   
    }
    // Método para limpiar lista
    public static void Limpiar ()
    {
           if (frente==null)
            System.out.println(" !!! Lista Vacia!!!");
            else
               
                     {
                        frente=null;
                        fin=null;

                      }
                      Presentar();

                }
   
    }

No hay comentarios.:

Publicar un comentario