Estructuras de datos

Solo disponible en BuenasTareas
  • Páginas : 2 (500 palabras )
  • Descarga(s) : 0
  • Publicado : 8 de marzo de 2011
Leer documento completo
Vista previa del texto
Estructuras de datos
[Árboles II]

Árbol Binario
6

2

10

0

4

8

12

1

3

5

7

9

11

13

Definición
Estructura nodoarbol{ Estructura nodoarbol *izqnodo; Datodato; Estructura nodoarbol *dernodo; };
tipo Estructura nodoarbol NODO; tipo NODO *ARBOL;
Estructura del árbol

Tipo Nodo y puntero a Nodo

Funciones
inserta_nodo_nuevo(ARBOL *,int);eliminar(ARBOL *); balancear(ARBOL *); inorden(ARBOL *);
preorden(ARBOL *); postorden(ARBOL *); Ejemplos

Insertar
funcion inserta_nodo_nuevo(ARBOL *rarbol, int nuevo) si *rarbol es igual a NULL entonces*rarbol.dato=nuevo; *rarbol.izqnodo =NULL; *rarbol.dernodo=NULL; sino si nuevo es menor que *rarbol.dato entonces inserta_nodo_nuevo(*rarbol.izqnodo, nuevo); *rarbol.izqnodo = nuevo; sinoinserta_nodo_nuevo(*rarbol.dernodo, nuevo); *rarbol.dernodo= nuevo; fin del si fin del si fin de la función

Regresar a Funciones

Recorrido Pre-orden
funcion preorden(ARBOL *rarbol) si *rarbol es diferentede NULL entonces muestra *rarbol.dato; preorden( *rarbol.izqnodo); preorden( *rarbol.dernodo); fin del si fin de la función
Regresar a Funciones

Recorrido In-orden
funcion inorden(ARBOL*rarbol) si *rarbol es diferente de NULL entonces inorden( *rarbol.izqnodo); muestra *rarbol.dato; inorden( *rarbol.dernodo); fin del si fin de la función
Regresar a Funciones

Recorrido Post-ordenfuncion postorden(ARBOL *rarbol) si *rarbol es diferente de NULL entonces postorden( *rarbol.izqnodo); postorden( *rarbol.dernodo); muestra *rarbol.dato; fin del si fin de la función
Regresar a Funciones funcion eliminar (ARBOL *rarbol) ARBOL *aux; si *rarbol es diferente de NULL entonces si *rarbol.izqnodo es diferente de NULL entonces *aux=*rarbol; *rarbol=*rarbol.dernodo; free(*aux); sino si*rarbol.dernodo es diferente de NULL entonces *aux=*rarbol; *rarbol=*rarbol.izqnodo; free(*aux); sino free(*rarbol); fin del si fin del si fin del si fin de la función

Elimina

Regresar a...
tracking img