Vous êtes sur la page 1sur 2

ALGORITMOS

ALGORITMO DE BUSQUEDA DE ARBOL BINARIO

Vamos a suponer que estamos buscando un numero que puede representar un


ao, hora o fecha , iniciaremos la bsqueda tomando como dato el punto medio
del total de datos . le dimos como nombre a esta variable ACTUAL .
int Buscar(Arbol a, int dat) { DECLARAMOS LA FUNCION BUSCAR Y LAS
VARIABLES QUE USAREMOS DAT ser el
valor a buscar .
pNodo.actual = a; VALOR DEL NODO QUE USAREMOS COMO RAIZ
while(!Vacio(actual)) {

INICIO DE LA CONDICION, SE REALIZARA


MIENTRAS EL NODO ACTUAL DE
REFERENCIA NO ESTE VACIO .

if(dat == actual->dato) return TRUE; SI EL VALOR DE DAT SE ENCUENTRA


EN EL NODO DE
REFERENCIA ACTUAL .
imprimir (dato encontrado);
else if(dat < actual->dato)
actual = actual->izquierdo; SI DAT ES MAYOR QUE ACTUAL, SEGUIMOS LA
BUSQUEDA AL NODO IZQUIERDO
else if(dat > actual->dato)
actual = actual->derecho;
SI DAT ES MENOR QUE ACTUAL, SEGUIMOS LA
BUSQUEDA AL NODO DERECHO
}
return FALSE;
imprimir (dato no encontrado) ; SI COMPROBAMOS QUE DAT ESTA VACIO
EN TODOS SUS NODOS .
}

ALGORITMO DE BUSQUEDA USANDO GRAFOS

Vamos a suponer que tenemos un juego educativo donde se nos presenta una
lista de pases y nosotros debemos escribir el nombre de su capital .
Cabe decir que es un grafo simple y se puede complementar de muchas
maneras .

rbol CAPITALES= [datos];


rbol PAISES= [datos];
CAPITALES(dato0) = INICIAL

CREAMOS LOS GRAFOS

LE DAMOS EL VALOR DEL DATO0 A LA


VARIABLE INICIAL QUE USAREMOS
COMO ARGUMENTO

Funcin escribe_el_capital(CAPITALES , RES , INICIAL) CREAMOS LA


REGLA QUE HARA
LA COMPARACION
Leer RES ;
si INICIAL = RESP ,

SI INICIAL ES IGUAL A RES ENTONCES EL


JUEGO ESTA SIENDO GANADO.

devolver RES,
imprimir (respuesta correcta);
si
CAPITALES(dato0++) = INICIAL

SI NO HAY IGUALDAD HACEMOS UNA


LLAMADA RECURSIVA A LA MISMA
FUNCION PERO ESTA VEZ
DANDOLE EL VALOR DEL
SIGUIENTE NOTO DEL GRAFO

escribe_el_capital();
si no

SI NO SE ENCUENTRA LA RESPUESTA
MANDAMOS JUEGO PERDIDO
imprimir (respuesta equivocada);
fin

Vous aimerez peut-être aussi