Es una estructura de datos bidimensional no lineal, con propiedades especiales. Los nodos de un árbol contienen dos o más enlaces, uno de los cuales puede ser null. El nodo raíz es el primer nodo en un árbol. Cada enlace en el nodo raíz hace referencia a un hijo. El hijo izquierdo es el primer nodo en el subárbol izquierdo (también conocido como el nodo raíz del subárbol izquierdo), y el hijo derecho es el primer nodo en el subárbol derecho (también conocido como el nodo raíz del subárbol derecho). Los hijos de un nodo específico se llaman hermanos. Un nodo sin hijos se llama nodo hoja. Generalmente, los científicos computacionales dibujan árboles desde el nodo raíz hacia abajo; exactamente lo opuesto a la manera en que crecen los árboles naturales.
Representación:
Representación:
Analicemos el programa del árbol binario. El método main de la clase PruebaArbol empieza creando una instancia de un objeto Árbol vacío y asigna su referencia a la variable árbol (línea 10). En las líneas 17 a 22 se generan 10 enteros al azar, cada uno de los cuales se inserta en el árbol binario mediante una llamada al método insertarNodo (línea 21). Después el programa realiza recorridos (líneas 25, 28 y 31, respectivamente).
La clase Arbol (líneas 44 a 113) tiene un campo private llamado raiz (línea 46); una referencia tipo NodoArbol al nodo raíz del árbol. El constructor de Arbol (líneas 49 a 52) inicializa raiz con null para indicar que el árbol está vacío. La clase contiene el método insertarNodo (líneas 55 a 61) para insertar un nuevo nodo en el árbol, además de los métodos recorridoPreorden (líneas 64 a 67), recorridoPreorden (líneas 81 a 84) y recorri doPostorden (líneas 98 a 101) para empezar recorridos del árbol.