arboles binarios - constructor
-
Upload
azquel76 -
Category
Engineering
-
view
87 -
download
4
Transcript of arboles binarios - constructor
Árboles binarios II
Tipos Abstractos de Datos
Constructor ABBValor
Hizq
Padre
Hder
constantes NODO_NULO = NULO tipos
ITEM = registrovalor: ELEMENTOpadre: apuntador a ITEMhijo_izq: apuntador a ITEMhijo_der: apuntador a ITEM
NODO = apuntador a ITEMABB = NODO
TAD: Crear nodo raiz
inicializar(ref t: ABB)
principiot = NODO_NULO
fin
TAD: Añadir elemento
principio p ← reservar(1,ITEM)
apuntado(p).valor →xapuntado(p).primer_hijo → NODO_NULOapuntado(p).siguiente_hermano → NODO_NULOsi t = NODO_NULO entonces
apuntado(p).padre → NODO_NULOt → pdevolver p
fin_siapuntado(p).padre → n
añadir_hijo (ref t: ARBOL, ref n: NODO, x: ELEMENTO): NODO
var p, q: NODOclave()
si apuntado(n).primer_hijo = NODO_NULO entoncesapuntado(n).primer_hijo psi_no
q apuntado(n).primer_hijomientras apuntado(q).siguiente_hermano 6=
NODO_NULO hacerq apuntado(q).siguiente_hermano
fin_mientrasapuntado(q).siguiente_hermano pfin_si
devolver pfin
Tarea
Escribir los diagramas de flujo para los siguientes TAD de árboles:
Eliminar nodo Buscar nodo Encontrar altura del árbol Determinar si el árbol está vacío Crear el nodo raiz Encontrar el predecesor de un nodo Encontrar el sucesor de un nodo