Академический Документы
Профессиональный Документы
Культура Документы
Búsqueda
La búsqueda (search en inglés) es un proceso que permite determinar si un arreglo contiene un valor que sea igual a cierto valor clave.
Existen dos técnicas de búsqueda:
- Búsqueda lineal
- Búsqueda binaria
La búsqueda lineal es la técnica más simple y funciona bien con arreglos pequeños y no ordenados.
Consiste en comparar la clave de búsqueda con todos los elementos del arreglo.
Por ejemplo, buscar el valor clave = 5 en el arreglo:
X[i] = [8 3 5 7].
El procedimiento es el siguiente:
1) Inicialmente a la posición del elemento buscado (p) se le asigna un valor que no corresponde a ningún valor posible del subíndice del arreglo, tal
como, -1.
p = -1
2) Se genera un bucle que permita comparar la clave con cada uno de los elementos del arreglo:
3) Si el resultado de la comparación es verdadera para un valor del subíndice del arreglo, entonces este valor será la posición del elemento buscado; en el
ejemplo, p=3.
4) En el caso de que el valor inicial de p no varié, después de haberse realizado todas las comparaciones, implica que el valor buscado no existe en el
arreglo.
La búsqueda binaria es la técnica de más alta velocidad y funciona eficientemente con arreglos grandes y ordenados previamente.
Consiste en eliminar, tras cada comparación, la mitad de los elementos del arreglo en los que se efectúa la búsqueda.
Primero localiza el elemento central del arreglo y luego lo compara con la clave de búsqueda.
Si son iguales, se ha encontrado dicha clave y se devuelve el subíndice de ese elemento.
De otro modo, el problema se reduce a buscar en una mitad del arreglo.
Ejemplo:
Ingresar el tamaño de un vector y cada uno de sus elementos. Así mismo, ingresar un número y en el caso de que éste se encuentre dentro del vector,
reportar la posición que ocupa. En caso contrario, reportar el mensaje: “El elemento buscado no ha sido encontrado”. Usar el método de búsqueda lineal.
Codificación: