class Nodo
{
int Elemento;
Nodo Siguiente;//crea el nodo con enlase a otro
public Nodo(int x)
{
Elemento=x;
Siguiente=null;//aterriza el nodo listo para ligarse a otro nodo
}
}
public class ListaSimple {
/**
* Creates a new instance of <code>ListaSimple</code>.
*/
public ListaSimple() {
}
/**
*/
private static Nodo Frente=null, Final=null;
public static void main(String[] args)
{
//Declaracion de variables y creacion del arreglo
int Max,Opcion;
int [] listasim;
Scanner entrada = new Scanner (System.in);
do
{
System.out.println("---------------Menu----------------");
System.out.println(" 1)Insertar (Ingresar Datos a la Lista) ");
System.out.println(" 2)Eliminar (Eliminar datos de la Lista) ");
System.out.println(" 3)Presentar Lista ");
System.out.println(" 4)Limpia Lista ");
System.out.println(" 5)Salir /n");
System.out.println(" Seleccione un opcion ");
Opcion =entrada.nextInt();
//Alimentando la opcion elegida mendiante un switch
switch (Opcion)
{
case 1 : Insertar();
break;
case 2 : Eliminar ();
break;
case 3 : Presentar();
break;
case 4 : Frente=null;
Final=Frente;
System.out.println("La Lista se ha vaciado");
break;
case 5 : break;
default : System.out.println(" Opcion Incorrecta Teclea una del Menu ");
break;
}
}while (Opcion !=5);
}
public static void Insertar ()
{
int valor;
Nodo aux;
Scanner entrada= new Scanner (System.in);
System.out.println("Ingrese Elemento: ");
valor=entrada.nextInt();
aux=new Nodo(valor);
if (Frente == null)
Frente=aux;
else Final.Siguiente=aux;
Final=aux;
}
public static void Presentar ()
{
Nodo aux;
if (Frente == null)
System.out.println("Lista Vacia");
else
{
for(aux=Frente;aux!=null;)
{
System.out.println("Elemento "+aux.Elemento);
aux=aux.Siguiente;
}
}
}
public static void Eliminar ()
{
if(Frente==null)
System.out.println("No existen Elementos por Eliminar Lista Vacia");
else
{
Frente = Frente.Siguiente;
System.out.println("Primer Elemento Eliminado");
}
}
}