Autor Tema: concepto de árbol binario completo  (Leído 21512 veces)

Mac

  • Intermedio
  • ***
  • Mensajes: 174
  • Java-Php
    • Ver Perfil
concepto de árbol binario completo
« en: 09 de Octubre 2014, 02:55 »
Hola Comunidad aquí con la temática de arboles

Necesito hacer esto

Decir cuando un arbol es completo o no es completo

Necesito programar un método boleano al que se le pase una referencia a un arbol binario y devuelva verdadero (true) si el arbol es completo y falso (false) en caso contrario.

Escriba un applet en java  que visualice gráficamente el arbol binario.

como me pueden ayudar orientar ?¿
Muchísimas Gracias
« Última modificación: 11 de Octubre 2014, 21:53 por Alex Rodríguez »

Mac

  • Intermedio
  • ***
  • Mensajes: 174
  • Java-Php
    • Ver Perfil
Re:arboles java
« Respuesta #1 en: 09 de Octubre 2014, 04:41 »
Arboles Completos

Un árbol completo se caracteriza porque todos sus nodos terminales tienen la misma altura.

Un árbol binario se dice que es completo, si todos los nodos del árbol , excepto los del ultimo nivel tienen dos hijos: Sub arbol izquierdo y sub arbol derecho.

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:arboles java
« Respuesta #2 en: 09 de Octubre 2014, 14:09 »
Hola, en árboles binarios tienes nodos hoja y nodos que no son hoja. Un nodo que no tiene hijos se conoce como hoja.

Un árbol binario completo de profundidad p, es un árbol estrictamente binario que tiene todas sus hojas en el nivel p.

Para determinar si el árbol es binario necesitas

a) Recorrer el árbol (en cualquier orden)

b) Si detectas un nodo hoja, anotar cuál es su nivel pNodoHoja

c) Para cada nodo hoja siguiente, verificar que su nivel es pNodoHoja. Si no es así, puedes detener el proceso y devolver como resultado "El árbol no es completo" (false)

d) Si tras recorrer el árbol todos los nodos hojas están en el mismo nivel, entonces el árbol es completo y puedes devolver como resultado "El árbol es completo" (true)


Resumiendo necesitas: un método (cualquiera) para recorrer el árbol, un método para comprobar si un nodo es hoja y un método para comprobar el nivel de un nodo. Con eso puedes armar la solución.

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".