Búsqueda secuencial

Albeiro Cuadrado Machado
Sebastián Arteaga Diaz

Contenido

  • Definición método de búsqueda
  • ¿Cuando utilizar el método de búsqueda secuencial?

          -Definición método de búsqueda secuencial

          -¿Ventaja o desventaja?

  • Ejercicio practico

          -Estrategia a usar

          -Cabecera de la función

          -Resultado final

  • Conclusiones

Definición método de busqueda

Un algoritmo de búsqueda es aquel que está diseñado para localizar un elemento con ciertas propiedades dentro de una estructura de datos; por ejemplo, ubicar el registro correspondiente a cierta persona en una base de datos.

La variante más simple del problema es la búsqueda de un número en un vector.

Source: Wikipedia

¿Cuando utilizar el método de búsqueda secuencial?

Se utiliza cuando el vector no está ordenado o no puede ser ordenado previamente.

Consiste en buscar el elemento comparándolo secuencialmente (de ahí su nombre) con cada elemento del vector hasta encontrarlo, o hasta que se llegue al final.

La existencia se puede asegurar cuando el elemento es localizado, pero no podemos asegurar la no existencia hasta no haber analizado todos los elementos del vector.

¿Ventaja o desventaja?

Búsqueda secuencial

​A la hora de realizar una búsqueda secuencial en un vector se recorrerá dicho vector hasta que se cumpla una de estas condiciones:
  • Se encuentre el valor buscado
  • Se termine el recorrido del vector

Búsqueda secuencial

Una búsqueda secuencial puede tener por tanto dos posibles resultados
  1. El elemento buscado NO está en el vector
  2. El elemento buscado SI está en el vector. En este caso debe indicar la posición del vector en que se encuentra el elemento.

Ejercicio práctico

Desarrollar una función que reciba un vector de enteros, el tamaño de dicho vector y un valor a buscar. La función debe devolver la posición de la primera ocurrencia del valor en el vector, o -1 si el valor no esta en el vector.

Ejercicio práctico

int Busqueda(int v[], int Tam, int Valor)

Cabecera de la funcion

Tipo de retorno

Vector

Tamaño del vector

Valor a buscar

Ejercicio práctico


 ...

 for (i=0; i<Tam; i++)

       if (v[i] == Valor)

​       return i;

 ...

 

 

Estrategia:

Recorrer vector desde el principio y devolver la posición del primer elemento igual a Valor:

Ejercicio práctico


 ...
 for  ...
 ...

  return -1;

 

Estrategia:

¿Que hacer para contemplar el caso de que el valor no esté en el vector?
Tras recorrer todo el vector retornar el valor -1.

Ejercicio práctico

int Busqueda(int v[], int Tam, int Valor)
{
   int i;

 

       for (i=0;  i<Tam; i++)

               if ( v[i] == Valor )

​                    return i;

 

       return -1;
}

Resultado final de la función:

78

27

-1

4

27

   0         1         2        3        4

Conclusiones

• La búsqueda es el proceso de encontrar la posición de un elemento destino dentro de una lista


• Existen dos métodos básicos de búsqueda en arrays: secuencial y binaria.


• La búsqueda secuencial se utiliza normalmente cuando el array no está ordenado. Comienza en el
principio del array y busca hasta que se encuentra el dato buscado y se llega al final de la lista.


• Si un array está ordenado, se puede utilizar un algoritmo más eficiente denominado búsqueda
binaria.

¡Obrigado!

Metodo de busqueda secuencial

By Albert Machado

Metodo de busqueda secuencial

Metodo de busqueda secuencial

  • 1,501