Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Arboles Binarios
Arboles Binarios
Si el nodo tiene un hijo izquierdo, este tiene que ser menor que él.
Si el nodo tiene un hijo derecho, este tiene que ser mayor que él.
ÁRBOL
BINARIO
¿Qué es un árbol binario de búsqueda?
Es aquel que dado un nodo, todos los datos del subárbol izquierdo son menores, mientras que
todos los datos del subárbol derecho son mayores.
Operaciones que se realizaran en el siguiente
código de árboles binarios.
nuevo_nodo->dato = n;
nuevo_nodo->der = NULL;
nuevo_nodo->izq = NULL;
nuevo_nodo->padre=padre;//se le indica quien sera el padre
return nuevo_nodo;
}
Insertar elementos en el árbol
void insertarNodo(Nodo *&arbol, int n,Nodo *padre)
if (arbol == NULL)
arbol = nuevoNodo;
else
if (n < valorRaiz)
insertarNodo(arbol->izq, n,arbol);
else
insertarNodo(arbol->der, n,arbol);
}
Mostrar árbol.
void mostrarArbol(Nodo *arbol, int contador)
if (arbol == NULL)
return;
else
}
Altura del árbol
int alturaArbol(Nodo *arbol){
if (arbol!=NULL){
int izquierda=alturaArbol(arbol->izq)+1;
int derecha=alturaArbol(arbol->der)+1;
if (izquierda>derecha){
return izquierda;
} else {
return derecha;
}
}
return -1;
}
Contar Nodos