BÚSQUEDA LINEAL
LIMITADA
SEGÚN ORDEN RECURSIVA
Por medio
de este trabajo podremos observar la importancia de los métodos de búsqueda
lineal limitada según orden recursiva, dependiendo el uso que se le vaya a dar
dentro de una aplicación.
La búsqueda lineal limitada según orden
recursiva se basa en recorrer un vector de N posiciones hasta encontrar el valor
buscado, este método de búsqueda usara una función recursiva como dice su
nombre llamándose a sí misma varias veces hasta encontrar el valor buscado o
ver que el valor es mayor que el ultimo valor del vector o menor que el primer
valor del vector, esto se puede realizar debido a que se aprovecha la
información suministrada en el arreglo se encuentra ordenado ascendentemente.
.
La búsqueda lineal limitada según orden
recursiva según orden se basa en buscar un número, en la posición que se
encuentre para así poder arrojar un resultado inmediato. Hay que tener en
cuenta que el vector tiene que estar organizado de manera ascendente para así
poder recorrer todas las posiciones y encontrar lo que se desee buscar.
Acá les mostramos el programa de búsqueda en
pseint
Declaramos un vector de 5 posiciones y
realizamos un llenado manual de los datos en un ciclo para
Luego de este paso se le pedirá al usuario
que ingrese el valor a buscar y lo asignara en la variable dato
Luego de esto colocamos en el subproceso los
valores requeridos para realizar la búsqueda el subproceso se llama Buscar este
consta de 3 parámetros que son el vector que es arreglo de 5 dimensiones en
este caso, el valor n que es el tamaño del vector en este caso 5, y el dato que
como mencionamos antes es el valor a buscar.
A continuación el sub proceso Buscar
El subproceso Buscar es una función recursiva
que queremos decir con recursiva que puede ser llamado dentro de su propia función,
a continuación intentaremos ser lo más explicativo posible sobre esta función recursiva.
Como n va disminuyendo a medida que avanza la
función este puede llegar a 0 y el tamaño de los arreglos en el algoritmo no pueden
ser 0 esto hace que si n es menor a 0 decir que no lo encuentra.
En estas 7 líneas de código esta el desenlace
de la búsqueda, porque acá se está comparando si el valor se encuentra en el vector
de posición n si es así imprimirá que el
valor si se encuentra y saldrá del subproceso, de lo contrario el valor no se
encuentra este programa verá si el valor se encuentra dentro del arreglo ¿pero
como sabrá eso? Este aceptara arreglos ordenados de manera ascendente y al ser
ascendente el ultimo valor del arreglo es el mayor de todos y el primer valor
en el arreglo será el menor de todos por consecuente si el valor es mayor al último
valor del arreglo ya no se encuentra dentro del arreglo y si es menor al primer
valor del arreglo no se encuentra dentro del arreglo el programa detecta esto y
deja de buscar mostrándote que el valor no se encuentra en el arreglo.
Y por ultimo pero no menos importante si ninguna
de las dos cumple con las condiciones el vuelve a llamar a si mismo pero reduciéndole
1 a n para revisar el valor anterior y así constantemente.
Espero que este tutorial haya sido de su interés.
Cristian Palacio
Cristian Palacio
Tonny Fernandez
Me gusto mucho la manera como explican este método, y la forma de como se toman el trabajo de explicar el código paso a paso. Si insertar las diapositivas quedaría mucho mejor. Gracias.
Pero solo se puede de manera acenente