O Algoritmo de Buscas
Por: bot1 bt21 • 31/10/2023 • Monografia • 687 Palavras (3 Páginas) • 69 Visualizações
O algoritmo de busca sequencial, consiste em encontra um determinado valor, dentro de uma lista desorganizada (Seja uma lista numérica fora de ordem como: 9, 45, 87, 2, 56 …, ou uma lista com nomes em ordem não alfabética como: George, Alan, Luciana, João, Eduardo, etc.), onde cada elemento da lista será analisado um após o outro de forma linear, até que encontre o valor que está buscando ou até que a lista acabe. Ao se criar um algoritmo de busca sequencial, deve-se ter noção do funcionamento de vetores e arras (arranjos), ao determinar o tamanho do vetor (5, 15, 20, etc.), pedir para o algoritmo verificar o valor de cada elemento do vetor, através do uso de arrays, para que possa ser retornado o valor buscado como verdadeiro, ou continuar percorrendo a lista na ordem subsequente (podendo ter início da busca tendo no começo, quanto no final), até que todos os elementos da lista forem verificados e retornar o resultado como falso.
Por exemplo: suponhamos que é necessário encontrar o número 26 em um vetor que contenha 35 elementos, no qual os números contidos nesse vetor, foram colocadas de forma desordenada. O algoritmo começa a verificar o primeiro elemento do vetor (0), e o número que se encontra nele é 97. Como o vetor 0 não contem 26, o algoritmo ira verificar o próximo vetor (1), e nele tem o número 31. Novamente, o vetor 1 não contem o número 26, então o algoritmo irá para o próximo vetor subsequente até que ache o número 26. Agora, digamos que o número 26 está armazenado no vetor 20, logo o algoritmo ira percorrer o vetor até chegar no vetor 20 e então ira retornar que foi encontrado no número 26. Outro exemplo seria se o número 26 estiver no vetor 31, então o algoritmo de busca ira percorrer o vetor da mesma forma que antes e retornar que acho o número 26. Mas caso o número 26 não esteja no vetor, o algoritmo ira percorrer por todos os 35 elementos do vetor e retornar que o número 26 não foi encontrado.
Existem várias formas de se criar um algoritmo de busca sequencial, no qual é bem simples. Usando um algoritmo de busca sequencial em Java como exemplo, temos a seguinte função:
public static int BuscaSequencial (int vet [ ], int tl, int valor) {
Int I = 0;
While ( (I < tl) && (vent [ i ] != valor) ) {
i++;
}
If ( (tl == 0) I I (i >= tl) ) i = -1
Return I;
}
Primeiro foi criada uma função nomeada como “BuscaSequencial”, no qual foi atribuída a essa função: um vetor (vent [ ]), uma variável que vai definir o tamanho logico para o vetor (tl), e uma variável que vai guardar o valor que se deseja encontrar dentro do vetor (valor). Para pode percorrer esse vetor, será usado a variável “i” (essa variável determina em qual posição do vetor será iniciado a busca), que irá possuir o valor 0, e um laço de repetição (while), no qual foi colocada duas condições para esse laço: Enquanto a variável “i” for menor que a variável “tl”, e o valor da posição I do vetor for diferente da variável “valor”, será incrementado ao valor da variável “i”, para que ele possa prosseguir para próxima posição do vetor, e verificar se o valor de I contém o valor da variável “valor”. Assim que o laço de repetição for concluído, o algoritmo executa o comando if da função: se a variável “tl” for igual a 0, ou, caso se I for maior ou igual a variável “tl”, o valor de I será igual a –1. Por fim, quando a função chegar ao fim, ela irá retornar o valor de I.
...