Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
Búsqueda binaria rec
#include <stdio.h> int busquedaBinaria(int *, int, int, int); int main(void) { // Definición del arreglo int A[6] = {11, 22, 30, 45, 66, 90}; // 'clave' representará el valor que se quiere buscar en el arreglo. int clave = 45; // 'posicion' representará la posición de la busqueda de la clave en el arreglo int posicion = busquedaBinaria(A, 0, 5, clave); // Evaluación if (posicion == -1) printf("%d no se encuentra en el vector", clave); else printf("%d se encuentra en la posicion %d", clave, posicion); return 0; } /* ------------------------Función busquedaBinaria-------------------------------- * Propósito: Evaluar si un número se encuentra o no en un arreglo. * Parámetros: 'A': representará el arreglo, 'start': representará el limite inferior, 'end': representará el limite superior, * 'target': representará la clave. * Retorno: -1 si el número no se encuentra en el arreglo, en caso contrario retornará la posición del arreglo. */ int busquedaBinaria(int *A, int start, int end, int target) { // Caso base: si el número no se encontró en el arreglo. if (start > end) return -1; else { int middle = (start + end) / 2; // Caso base: si el número se encontró en el arreglo. if (A[middle] == target) return middle; else // Caso recursivo: Evaluar si 'target' es mayor o menor que el número que se encuentra en la mitad del arreglo. return (A[middle] > target)? busquedaBinaria(A, start, middle - 1, target): busquedaBinaria(A, middle + 1, end, target); } }
run
|
edit
|
history
|
help
0
with goto, with j++
coding!!Woo!!
C Array Demonstration
A_141124Burbuja
Rudra
challoc
Practice flipping the stars
armstrong number using a while loop
BSEARCH() COMPLETE
150115_PrimoDelFactorial