C++
Home

Pesquisa Linear

Freqüentemente um programador trabalha com grandes quantidades de dados. Muitas vezes também é necessário saber se algum valor existe em um array, e para achar esse valor em algum determinado elemento, utilizamos a pesquisa Linear ou Binária.

A pesquisa linear compara cada elemento de um array com a chave de pesquisa. Como o array não esta em ordem especifica, as probabilidades de o valor ser encontrado no primeiro elemento ou no ultimo são as mesmas.

Isso quer dizer, que ela é eficiente em arrays que não estejam ordenadas, ou em pequenas arrays.

// pesquisa linear
#include <iostream>
using std::cout;
using std::endl;
using std::cin;

int linear ( const int [], int, int );

int main()
{
   const int tamanho = 100;
   int array[ tamanho ], procura, elemento;

   for ( int x = 0; x < tamanho; x++ )
      array[ x ] = 2 * x;

   cout << "Digite um numero para ser pesquisado: " << endl;
   cin >> procura;

   elemento = linear( array, tamanho, procura );

   if ( elemento != -1 )
      cout << "O valor foi encontrado no elemento " << elemento << endl;
   else
      cout << "Valor nao encontrado";

   cin;

   return 0;
}

int linear ( const int valores[], int total, int procurar )
{
   for ( int n = 0; n < total; n++ )
   {
      if ( valores[ n ] == procurar )
      return n;

   }

   return -1;
}

 

Perguntas??? Email