Vous êtes sur la page 1sur 7

03/11/13

Com partir 0

LOS UNICOS: EJERCICIOS DE ARBOLES EN JAVA 3


Ms Siguiente blog Crear un blog Acceder

LOS UNICOS
m ircoles, 30 de enero de 2013 Archivo del blog

EJERCICIOS DE ARBOLES EN JAVA 3


import java.io.*; class NodoBinario{ int dato; NodoBinario Hizq, Hder; //Constructores NodoBinario (int Elem){ dato = Elem; NodoBinario Hizq, Hder = null; } //Insercion de un elemento public void InsertaBinario (int Elem){ if(Elem < dato){ if (Hizq == null) Hizq = new NodoBinario(Elem); else Hizq.InsertaBinario(Elem); } else{ if (Elem > dato){ if (Hder == null) Hder = new NodoBinario (Elem); else Hder.InsertaBinario(Elem); } } } } //Definicion de la clase Arbol class Arbol{ Cola Cola = new Cola(); NodoBinario Padre; NodoBinario Raiz; //Constructor public Arbol(){ Raiz = null; } //Insercion de un elemento en el arbol public void InsertaNodo(int Elem){ if(Raiz == null) Raiz = new NodoBinario (Elem); else Raiz.InsertaBinario (Elem); } //Preorden Recursivo del arbol public void Preorden (NodoBinario Nodo){ if(Nodo == null) return; else{ System.out.print (Nodo.dato + ); Preorden (Nodo.Hizq); Preorden (Nodo.Hder); } } //PostOrden recursivo del arbol public void PostOrden (NodoBinario Nodo){ if(Nodo == null) return; else{ PostOrden (Nodo.Hizq); PostOrden (Nodo.Hder); System.out.print (Nodo.dato + ); } } //Inorden Recursivo del arbol public void Inorden (NodoBinario Nodo){

2013 (20) enero (20) EJERCICIOS DE ARBOLES EN JAVA 3 EJERCICIOS ESTRUCTURAS EN JAVA EJERCICIOS DE ARBOLES EN JAVA EJERCICIOS DE ARBOLES EN JAVA EJERCICIOS DE ARBOLES EN JAVA EJERCICIOS DE ARBOLES EN JAVA EJERCICIOS DE ARBOLES EN JAVA EJERCICIOS DE ARBOLES EN JAVA EJERCICIOS DE ARBOLES EN JAVA MAPA MENTAL ARBOLES EJEMPLO DE ARBOL EN JAVA 2 EJEMPLO DE ARBOL EN JAVA 1 VIDEOS DE ESTRUCTURA DE DATOS EN JAVA LISTA GENERICA http://sites.google.com/site/losunicos11 5/archivad... MAPA CONCEPTUAL COLAS EN C LISTAS EN C MAPA MENTAL MAPA CONCEPTUAL ESTRUCTURA DE DATOS

Datos personales

jaime sanabria
Seguir

Ver todo mi perfil

losestructurados1704.blogspot.mx/2013/01/normal-0-21-false-false-false-es-co-x.html

1/7

03/11/13

LOS UNICOS: EJERCICIOS DE ARBOLES EN JAVA 3


if(Nodo == null) return; else{ Inorden (Nodo.Hizq); System.out.print(Nodo.dato + ); Inorden (Nodo.Hder); } } //Busca un elemento en el arbol void Busqueda (int Elem, NodoBinario A){ if((A == null) | (A.dato == Elem)){ System.out.print(A.dato + ); return; } else{ if(Elem>A.dato) Busqueda (Elem, A.Hder); else Busqueda ( Elem, A.Hizq); } } //Altura del arbol public int Altura (NodoBinario Nodo){ int Altder = (Nodo.Hder == null? 0:1 + Altura (Nodo.Hder)); int Altizq = (Nodo.Hizq == null? 0:1 + Altura (Nodo.Hizq)); return Math.max(Altder,Altizq); } //Recorrido en anchura del arbol public void Anchura (NodoBinario Nodo){ Cola cola= new Cola(); NodoBinario T = null; //System.out.print (El recorrido en Anchura es: ); if(Nodo != null){ cola.InsertaFinal (Nodo); while(!(cola.VaciaLista ())){ T = cola.PrimerNodo.datos; cola.EliminaInicio(); System.out.print(T.dato + ); if (T.Hizq != null) cola.InsertaFinal (T.Hizq); if (T.Hder != null) cola.InsertaFinal (T.Hder); } } System.out.println(); } } //Definicin de la Clase NodoLista class NodosListaA{ NodoBinario datos; NodosListaA siguiente; //Construtor Crea un nodo del tipo Object NodosListaA (NodoBinario valor){ datos =valor; siguiente = null; //siguiente con valor de nulo } // Constructor Crea un nodo del Tipo Object y al siguiente nodo de la lista NodosListaA (NodoBinario valor, NodosListaA signodo){ datos = valor; siguiente = signodo; //siguiente se refiere al siguiente nodo } } //Definicin de la Clase Lista class Cola{ NodosListaA PrimerNodo; NodosListaA UltimoNodo; String Nombre; //Constructor construye una lista vacia con un nombre de List public Cola(){ this (Lista); } //Constructor public Cola (String s){ Nombre = s; PrimerNodo = UltimoNodo =null; } //Retorna True si Lista Vaca public boolean VaciaLista() { return PrimerNodo == null; } //Inserta un Elemento al Frente de la Lista public void InsertaInicio (NodoBinario ElemInser){ if(VaciaLista()) PrimerNodo = UltimoNodo = new NodosListaA (ElemInser); else PrimerNodo = new NodosListaA (ElemInser, PrimerNodo);

losestructurados1704.blogspot.mx/2013/01/normal-0-21-false-false-false-es-co-x.html

2/7

03/11/13

LOS UNICOS: EJERCICIOS DE ARBOLES EN JAVA 3


} //Inserta al Final de la Lista public void InsertaFinal(NodoBinario ElemInser){ if(VaciaLista()) PrimerNodo = UltimoNodo = new NodosListaA (ElemInser); else UltimoNodo=UltimoNodo.siguiente =new NodosListaA (ElemInser); } //Eliminar al Inicio public void EliminaInicio(){ if(VaciaLista()) System.out.println (No hay elementos); // Restablecer las referencias de PrimerNodo y UltimoNodo if(PrimerNodo.equals (UltimoNodo)) PrimerNodo = UltimoNodo = null; else PrimerNodo = PrimerNodo.siguiente; } //Elimina al final public void EliminaFinal (){ if(VaciaLista()) System.out.println (No hay elementos); // Restablecer las referencias de PrimerNodo y UltimoNodo if (PrimerNodo.equals (UltimoNodo)) PrimerNodo = UltimoNodo = null; else{ NodosListaA Actual =PrimerNodo; while (Actual.siguiente != UltimoNodo) Actual = Actual.siguiente; UltimoNodo =Actual; Actual.siguiente = null; } } } public class ArbolBinario{ public static void main (String[]args)throws IOException { BufferedReader entrada =new BufferedReader(new InputStreamReader(System.in)); //creando objeto del arbolito xD Arbol A = new Arbol(); int b; for(int j=0;j<6;j++) { System.out.println(Ingresa Datos ); b=Integer.parseInt(entrada.readLine()); A.InsertaNodo (b); } System.out.print( Preorden es: ); A.Preorden (A.Raiz); System.out.println(); System.out.print( Inorden es: ); A.Inorden (A.Raiz); System.out.println(); System.out.print( Postorden es: ); A.PostOrden (A.Raiz); System.out.println(); System.out.println(La altura del arbol es: + A.Altura (A.Raiz)); A.Anchura (A.Raiz)

2 Siguiente import java.util.Stack; // importamos la clase Stack public class a { public static void main (String[] args) { Stack Pila = new Stack(); // creamos la pila Pila.push("Hola"); // agregamos la cadena "Hola" al final de la pila System.out.println(Pila); // mostramos la pila } } ----------------------------Ahora uno mas complejo: import java.util.Stack; // importamos la clase Stack public class a {

losestructurados1704.blogspot.mx/2013/01/normal-0-21-false-false-false-es-co-x.html

3/7

03/11/13
public static void main (String[] args) { Stack Pila = new Stack(); // creamos la pila

LOS UNICOS: EJERCICIOS DE ARBOLES EN JAVA 3

Pila.push("Hola"); // agregamos la cadena "Hola" al final de la pila Pila.push("como"); // agregamos la cadena "como" al final de la pilav Pila.push("estas"); // agregamos la cadena "estas" al final de la pila Pila.push("tu"); // agregamos la cadena "tu" al final de la pila Pila.push("?"); // agregamos la cadena "?" al final de la pila Object A = Pila.get(2); // el objeto A recibe la cadena que se encuentra en la posicion 2 de la pila, osea "estas" System.out.println(A); // mostramos el objeto A //----------------------------------if(Pila.contains("tu")) { System.out.println("La pila si contiene la cadena tu"); } else { System.out.println("La pila no contiene la cadena tu"); } //----------------------------------System.out.println(Pila.size()); // imprime el tamao de la pila Pila.pop(); // Eliminamos el ultimo objeto de la pila, osea "?" System.out.println(Pila); // Muestra la pila, ya no deberia tener el elemento "?" //----------------------------------Pila.clear(); // borra todos los elementos de la pila if(Pila.isEmpty()) // comprueba si la pila esta vacia { System.out.println("La pila esta vacia"); } else { System.out.println("La pila no esta vacia"); } } } //-------------------Copia el codigo al JCreator por que aqui no se visualiza bien.. Si tienes problemas avisas....a y con las colas y listas no hay mucha diferencia, se usan practicamente los mismos metodos que te mencione antes, solo que para las listas en ves de crear un objeto de la clase Stack creas un objeto de la clase LinkedList y para las colas la clase Queue. Pila clase Stack Cola clase Queue Lista clase LinkedList Fuente(s): yo mismo ercicio

3 ejercicio

Clase Nodo

1 2 3 4 5 6 7 8 9 10

c l a s sn o d o { i n td a t o ; n o d od e r ; n o d oi z q ; n o d o ( i n td a t ) { t h i s . d a t o = d a t ; t h i s . d e r = n u l l ; t h i s . i z q = n u l l ;

losestructurados1704.blogspot.mx/2013/01/normal-0-21-false-false-false-es-co-x.html

4/7

03/11/13

LOS UNICOS: EJERCICIOS DE ARBOLES EN JAVA 3

11 12

} }

Clase Arbol

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63

p u b l i cc l a s sa r b o l { n o d or a i z = n u l l ; p u b l i cb o o l e a nt i e n e r a i z ( ) { i f ( r a i z = = n u l l )r e t u r nf a l s e ; e l s er e t u r nt r u e ; } p u b l i ca r b o la l t a ( i n td a t ) { i f ( ! t i e n e r a i z ( ) ) { n o d on u e v o = n e wn o d o ( d a t ) ; r a i z = n u e v o ; } e l s e { b o o l e a ni z q ; n o d oa c t u a l = r a i z ; w h i l e ( t r u e ) { i f ( a c t u a l . d a t o < d a t )i z q = f a l s e ; e l s ei z q = t r u e ; i f ( ! i z q ) { i f ( a c t u a l . d e r = = n u l l ) { n o d on u e v o = n e wn o d o ( d a t ) ; a c t u a l . d e r = n u e v o ; b r e a k ; } e l s ea c t u a l = a c t u a l . d e r ; } e l s e { i f ( a c t u a l . i z q = = n u l l ) { n o d on u e v o = n e wn o d o ( d a t ) ; a c t u a l . i z q = n u e v o ; b r e a k ; } e l s ea c t u a l = a c t u a l . i z q ; } } } r e t u r nt h i s ; } p u b l i cb o o l e a nb a j a ( i n td a t ) { n o d oa c t u a l = r a i z ,a n t e r i o r = r a i z ,t e m p ; w h i l e ( t r u e ) { i f ( a c t u a l = = n u l l )b r e a k ; i f ( a c t u a l . d a t o = = d a t )b r e a k ; a n t e r i o r = a c t u a l ; i f ( a c t u a l . d a t o < d a t )a c t u a l = a c t u a l . d e r ; e l s ea c t u a l = a c t u a l . d e r ; } i f ( a c t u a l = = n u l l )r e t u r nf a l s e ; e l s e { i f ( a c t u a l = = r a i z )

losestructurados1704.blogspot.mx/2013/01/normal-0-21-false-false-false-es-co-x.html

5/7

03/11/13

LOS UNICOS: EJERCICIOS DE ARBOLES EN JAVA 3

64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111

{ t e m p = a c t u a l . i z q ; r a i z = r a i z . d e r ; a n t e r i o r = r a i z ; } e l s e i f( a n t e r i o r . d e r= =a c t u a l ) { t e m p = a c t u a l . i z q ; a n t e r i o r = a c t u a l . d e r ; } e l s e { t e m p = a c t u a l . i z q ; a n t e r i o r . d e r = a c t u a l . i z q ; } a c t u a l = n e wn o d o ( ) ; w h i l e ( a c t u a l . i z q ! = n u l l ) a c t u a l = a c t u a l . i z q ; a c t u a l . i z q = t e m p ; r e t u r nt r u e ; } } p u b l i cv o i di m p r i m i r p r e o r d e n ( ) { a y u d a n t e P r e o r d e n ( r a i z ) ; } p u b l i cv o i da y u d a n t e P r e o r d e n ( n o d od a t ) { i f ( d a t = = n u l l ) r e t u r n ; S y s t e m . o u t . p r i n t f ( " % d" , d a t . d a t o ) ; a y u d a n t e P r e o r d e n ( d a t . d e r ) ; a y u d a n t e P r e o r d e n ( d a t . i z q ) ; } p u b l i cv o i di m p r i r i n o r d e n ( n o d od a t ) { i f ( d a t ! = n u l l ) { i m p r i r i n o r d e n ( d a t . i z q ) ; S y s t e m . o u t . p r i n t l n ( "" + d a t . d a t o ) ; i m p r i r i n o r d e n ( d a t . d e r ) ; } } }

Clase Main

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

p u b l i cc l a s sM a i n{

p u b l i cs t a t i cv o i dm a i n ( S t r i n g [ ]a r g s ){ j a v a . u t i l . S c a n n e rl e e r = n e wj a v a . u t i l . S c a n n e r ( S y s t e m . i n ) ; a r b o lx = n e wa r b o l ( ) ; i n tz ; S y s t e m . o u t . p r i n t ( " I n g r e s ee ln u m e r od eD a t o sac a p t u r a r :" ) ; z = l e e r . n e x t I n t ( ) ; f o r ( i n ti = 1 ;i < = z ; i + + ) { i n tm ; S y s t e m . o u t . p r i n t l n ( " I n g r e s eD a t o" + i + " : " ) ; m = l e e r . n e x t I n t ( ) ; x . a l t a ( m ) ; } S y s t e m . o u t . p r i n t l n ( " V a l o r e sC a p t u r a d o se nP r e O r d e n : " ) ; x . i m p r i m i r p r e o r d e n ( ) ; i n tq ;

losestructurados1704.blogspot.mx/2013/01/normal-0-21-false-false-false-es-co-x.html

6/7

03/11/13

LOS UNICOS: EJERCICIOS DE ARBOLES EN JAVA 3

18 19 20 21 22 23 24

S y s t e m . o u t . p r i n t ( " \ n I n g r e s ed a t oab o r r a r :" ) ; q = l e e r . n e x t I n t ( ) ; x . b a j a ( q ) ; S y s t e m . o u t . p r i n t l n ( " \ n D e s p u e sd eb o r r a re ld a t o" + q + ": " ) ; x . i m p r i m i r ( ) ; } }

Publicado por jaime sanabria en 16:14 Recomendar esto en Google

No hay comentarios: Publicar un comentario en la entrada


Introduce tu comentario...

Comentar como:

Cuenta de Google

Publicar

Vista previa

Pgina principal Suscribirse a: Enviar comentarios (Atom)

Entrada antigua

Plantilla Simple. Con la tecnologa de Blogger.

losestructurados1704.blogspot.mx/2013/01/normal-0-21-false-false-false-es-co-x.html

7/7

Vous aimerez peut-être aussi