You are on page 1of 6

INTRODUCCION

Cuando deseamos encontrar cierta información en un arreglo o vector unidimensional como el


numero de cedula de un ciudadano en una base de datos grande, debemo utilizar métodos
que faciliten nuestro trabajo, pero ahorrando recursos. Esto quiere decir que si en una base de
datos de miles de usuarios no podemos buscar uno por uno, por que gastamos tiempo y
dinero.

El método de búsqueda que da a conocer en este informe es el método de búsqueda binaria


que es de alta velocidad y eficiente.
OBJETIVO GENERAL

• Explicar la lógica de una búsqueda binaria en un arreglo unidimensional OBJETIVOS

ESPECÍFICOS

• Definir que es un algoritmo de búsqueda.


• Dar a conocer cómo funciona el algoritmo de búsqueda binaria.
• Mostrar un ejercicio para mejor comprensión del mismo.
• Describir las ventajas y desventajas de un algoritmo de búsqueda binaria.
• Realizar una búsqueda binaria en los lenguajes de programación Visual Basic, C++, java.
¿ Que es búsqueda binaria?

La búsqueda binaria consiste en dividir el array por su elemento medio en dos subarrays más
pequeños, y comparar el elemento con el del centro. Si coinciden, la búsqueda se termina. Si el
elemento es menor, debe estar (si está) en el primer subarray, y si es mayor está en el
segundo.

¿COMO FUNCIONA LA BÚSQUEDA BINARIA?

1. Se declaran los índices superior e inferior. El inferior que inicia en cero y el superior
con el tamaño del arreglo menos 1.
2. Se calcula el centro del arreglo con la siguiente fórmula.Centro=(inferior + superior)/ 2.
3. Se verifica si el arreglo en la posición centro es igual al dato o elemento que se desea
encontrar. Si es igual significa que encontramos el elemento y retornamos centro.
4. Debido a que el vector se encuentra ordenado si el dato que buscamos es mayor a la
posición central se descartan todos los datos que se encuentren en la parte inferior,
ahora la variable inicio se ubica en la posición centro + 1 de la misma manera si el dato
que buscamos en menor que la posición central definida se descarta la parte superior
del vector, ahora la variable final se moverá a la izquierda y se ubica en la posición
centro – 1.
5. Volvemos al paso 2, hasta encontrar el dato que buscamos.

Su diferencia con la búsqueda secuencial:

La diferencia está en que la búsqueda secuencial busca a los elementos desde el principio,
analizándolos uno por uno hasta llegar al número deseado.

En cambio, la búsqueda binaria hace un descarte más rápido para encontrar el número, ya
que, descarta un conjunto de números en cual ya sabe que no está, y solo busca la parte
restante. Pero esto es con la condición de que los números se encuentren ordenados
ascendentemente.

Aquí un breve ejemplo de los dos:

Busqueda Binaria:

int main () {

int lista[15]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};

int primero = 0;

int centro=0;

int ultimo = 15;

cout<<"Ponga el número que desea buscar "<<endl;

int n;

cin>>n;

while(primero <= ultimo){

centro=(primero+ultimo)/2;
if(lista[centro]==n){

cout<<"El numero ha sido encontrado"<<endl;

return 1;

}else

if(n> lista[centro]){

primero= centro+1;

}else

ultimo=centro-1;

cout<<"El numero No ha sido encontrado"<<endl;

Busqueda Secuencial:

int main() {

int lista[5]={6,8,3,5,9};

cout<<"Ponga el numero que desee buscar "<<endl;

int n;

cin>>n;

char band ='F';

int i=0;

while((band=='F') && (i<6))

if(lista[i]==n){

band ='V';

i++;

if(band =='V'){

cout<<"el numero se ha encontrado. "<<endl;

}else

cout<<"el elemento no sido encontrado. "<<endl;

return 0;

}
VENTAJAS Y DESVENTAJAS

• La búsqueda binaria es un método eficiente siempre y cuando el arreglo este ordenado de


manera ascendente y descendente.
• La búsqueda binaria proporciona un medio para reducir al máximo el tiempo necesario para
buscar un elemento dentro de una lista de gran tamaño.
• Esta altamente recomendado para buscar en arreglos extremadamente extensos ya que si
se tiene un arreglo de más 100 elementos, este en una sola iteración desecha la mitad del
arreglo reduciendo elementos y de esta manera tiempo.
• El arreglo debe estar necesariamente ordenado de manera ascendente.

CONCLUSIONES

• El método de búsqueda binaria se encarga de examinar primero el elemento central de la


lista; si este es el elemento buscado entonces la búsqueda ha terminado. El tipo de búsqueda
binaria se utiliza en vectores ordenados.
• Es por eso que luego de realizar este trabajo hemos visto como los algoritmos son una de las
herramientas más complejas y aplicables en el área de la informática y el mundo de los
computadores.

RECOMENDACIONES

• Antes de realizar una búsqueda empleando el algoritmo binario se debe verificar que es
arreglo este ordenado de manera ascendente y descendente.
• Utilizar un algoritmo de búsqueda de acuerdo a sus necesidades para una mejor eficiencia
en la búsqueda de elementos y procesamiento de la misma.
• Es recomendable utilizar este método de búsqueda con archivos muy extensos ya que
proporciona un medio para reducir el tiempo de búsqueda, debido a que en una sola iteración
elimina el 50 % de elementos de una lista o arreglo que se está ejecutando.

BIBLIOGRAFÍA
- https://tutorias.co/arrays-visual-c-busqueda-binaria/