Nodos Simples Java

February 3, 2023 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download Nodos Simples Java...

Description

 

import java.util.Scanner; //Made By Baldemar Alejandres 15/OCTUBRE/2015 public class NodosV2 {   public class nodesimple {   int aleatorio;   nodesimple direccion = null;

//direccion del nodo null

 

} nodesimple raiz = null; //direccion del primer nodo

   

public void insertarfinal(int numero) { nodesimple nodito = new nodesimple(); nodito.aleatorio = numero; //captura el dato

    z        

if (raiz == null) { raiz = nodito;

//el dato capturado se le asigna la posicion de rai

nodito.direccion = null; //direccion del nodo nula } else { nodesimple asadito= raiz; //a este nodo se le asigna raiz

while (asadito.direccion != null) { //mientras la direccion sea dife rente de null, se "brinca" al siguiente nodo   asadito = asadito.direccion;   }   asadito.direccion = nodito; //se crea la liga   }   }      

public void insertarprincipio(int num) { nodesimple firtnode = new nodesimple(); //crea un nuevo nodo firtnode.aleatorio = num; //captura el dato firtnode.direccion = raiz; //se crea la liga. la direccion del nodo ap untara a raiz   raiz = firtnode; //raiz nueva sera el nodo princi   }  

public void mostrar() {

nodesimple caca = raiz;   System.out.println("LISTADO");   while (caca != null) { //se rompe el while hasta que llega a una direc cion null   System.out.print("|" + caca.aleatorio + "|-->");   caca = caca.direccion;   }   System.out.println("null");   }                

public void Buscar(int numbuscar) { nodesimple monchi = raiz; boolean banderita = false; while (monchi != null) { if (monchi.aleatorio == numbuscar) { System.out.println("se encontro el numero " + numbuscar); banderita = true; monchi = null; //si lo encuentra que se detenga el recorrido

 

               

} else { monchi = monchi.direccion; }

}

 

public void eliminar(int EliminarNum) {

} if (banderita == false) { System.out.println("No se encontro el numero " + numbuscar); }

     

nodesimple monigote = raiz; nodesimple anterior = null;

while (monigote != null && monigote.aleatorio != EliminarNum) { //si el numero en la posicion "X" es diferente del numero a eliminar   anterior = monigote; //anterior seposiciona en raiz   monigote = monigote.direccion;   }   if (monigote == null) { //pregunta si el auxiliar es nullo "llego hasta nodo final y no encontro el dato a eliminar"   System.out.println("NO SE ENCONTRO EL NODO");   } else {   if (anterior == null) {   System.out.println("se ha eliminado el nodo " + EliminarNum);   raiz = raiz.direccion;   } else {   System.out.println("se ha eliminado el nodo " + EliminarNum);   anterior.direccion = monigote.direccion;   }   }   }        

public void modificar(int A) { Scanner leer = new Scanner(System.in); nodesimple oldenait = raiz; boolean bandeira = false;

     

while (oldenait != null) { if (oldenait.aleatorio == A) { System.out.println("Ingresa un nuevo valor");

                   

oldenait.aleatorio = leer.nextInt(); bandeira = true; oldenait = null; } else { oldenait = oldenait.direccion; } } if (bandeira == false) { System.out.println("EL NUMERO " + A + " NO SE ENCONTRO"); }

 

}

     

public static void main(String[] args) { Scanner leer = new Scanner(System.in); NodosV2 objeto = new NodosV2();

     

byte option = 0; byte aleatorio; do {

 

                   

System.out.println("1 = INSERTAR AL FINAL"); System.out.println("2 = INSERTAR AL PRINCIPIO"); System.out.println("3 = MOSTRAR"); System.out.println("4 = BUSCAR"); System.out.println("5 = ELIMINAR"); System.out.println("6 = MODIFICAR"); System.out.println("7 = SALIR"); option = Byte.parseByte(leer.nextLine()); switch (option) { case 1:

                                                             

aleatorio = (byte) (Math.random() * 100); System.out.println("NUMERO GENERADO ----> " + aleatorio); objeto.insertarfinal(aleatorio); break; case 2: aleatorio = (byte) (Math.random() * 100); System.out.println("NUMERO GENERADO ----> " + aleatorio); objeto.insertarprincipio(aleatorio); break; case 3: if (objeto.raiz == null) { System.out.println("NO HAY NADA QUE MOSTRAR"); } else { objeto.mostrar(); } break; case 4: if (objeto.raiz == null) { System.out.println("NO HAY NODOS ALMACENADOS"); } else { System.out.println("Que numero deseas buscar"); objeto.Buscar(Integer.parseInt(leer.nextLine())); } break; case 5: if (objeto.raiz == null) { System.out.println("NO HAY NODOS ALMACENADOS"); } else { System.out.println("Dame un numero a eliminar"); int exisde = Integer.parseInt(leer.nextLine()); objeto.eliminar(exisde);

                         

} break; case 6: if (objeto.raiz == null) { System.out.println("NO HAY NODOS ALMACENADOS"); } else { System.out.println("Dame numero a modificar"); objeto.modificar(Integer.parseInt(leer.nextLine())); } break; } } while (option != 7); }

}

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF