Pesquisa Sequencial
O objetivo da pesquisa é procurar por um elemento dentro de uma coleção de elementos. O algoritmo de pesquisa sequencial possui este nome porque o objetivo dele é procurar o elemento de forma sequencialmente dentro de uma coleção de elementos.
Dado um vetor:
- Percorre os elementos de um vetor
- Se o elemento procurado estiver dentro do vetor, imprime o valor do elemento e para de procurar pelo elemento no vetor.
- Se não encontrou o elemento dentro do vetor, imprime uma mensagem informando que o elemento não foi encontrado.
Pesquisando o valor 0 (zero)
Quando pesquisamos o número 0 (zero) dentro do vetor temos o seguinte fluxo:
O contador está com valor 0 (zero) e verifica se o número dentro do vetor na posição do contador é igual ao número procurado 0 (zero).
Como o número que está dentro do vetor não é o número que está sendo procurado, então incrementa em 1 o valor do contador e verifica novamente se o valor que está dentro do vetor na posição do contador é igual ao valor procurado.
Como o número que está dentro do vetor ainda não é o número que está sendo procurado, então incrementa em 1 o valor do contador e verifica novamente se o valor que está dentro do vetor na posição do contador é igual ao valor procurado.
Encontrou o valor procurado dentro do vetor, então imprime uma mensagem avisando que encontrou o valor procurado.
Pesquisando o valor 3 (três)
Agora queremos pesquisar o valor 3 dentro do vetor, percorremos o vetor por completo e não encontramos o valor pesquisado:
Neste ponto o valor do contador é igual a o tamanho do vetor, ou seja, tamanho 6. Então devemos imprimir uma mensagem avisando que o valor pesquisado não está dentro do vetor.
Implementação do algoritmo de Pesquisa Sequencial
- Na linha 20, temos a assinatura do método que vai procurar um elemento dentro do vetor, utilizando o algoritmo de Pesquisa Sequencial.
- Na linha 23, utilizamos um
for
para percorrer todos os elementos do vetor. - Na linha 25, verifica se o numero dentro do vetor, tem o mesmo valor que o número que está sendo procurado, e se encontrou o número então imprime ele na tela e para de pesquisar.
- Na linha 33, verificamos se o tamanho do contador utilizado no for tem um valor maior que o tamanho do vetor, para verificar se já percorreu todo o vetor, mas não encontrou o valor procurado.
Utilizando pesquisa sequencial com objetos
O mesmo conceito de pesquisa sequencial pode ser aplicado para um vetor de Objetos, procurando algum objeto por um ou vários atributos.
- Na linha 27, temos a assinatura do método que vai procurar uma Pessoa dentro do vetor de pessoas, utilizando o algoritmo de Pesquisa Sequencial.
- Na linha 30, utilizamos um for para percorrer todas as pessoas do vetor.
- Na linha 32, verifica se o nome da pessoa dentro do vetor, tem o mesmo nome da pessoa que está sendo procurada, e se encontrou então imprime o nome da pessoa na tela e para de pesquisar.
- Na linha 40, verificamos se o tamanho do contador utilizado no for tem um valor maior que o tamanho do vetor, para verificar se já percorreu todo o vetor, mas não encontrou alguma pessoa com o mesmo nome.
Outra forma de programar a pesquisa sequencial
Este mesmo algoritmo de busca sequencial pode ser programando de uma outra forma, sem afetar a estrutura do algoritmo, exemplo:
- Na linha 24, criamos um laço que enquanto não chegar ao fim do vetor ou não encontrar o valor procurado dentro do vetor, vai incrementando a variável cont.
- Na linha 29, verifica se ainda não percorreu todos os elementos do vetor e se encontrou o valor procurado.
- A linha 32 é executada se chegou ao fim do vetor e não encontrou o valor procurado.