Caro, aluno,
ao longo da Unidade foram abordados: a problemática do crescimento do volume de dados; conceitos e técnicas sobre algoritmos de busca, ordenação e armazenamento; bem como análise de complexidade. Os referidos algoritmos são recursos importantes que possibilitam melhor aproveitamento da grande quantidade de informação armazenada nos repositórios de dados. Estes assuntos proporcionaram a você uma ampla visão sobre o tema, sua aplicabilidade e importância no cenário tecnológico atual. (MANZANO, J. A. N. G.; LOURENÇO, A. E.; MATOS, E. Algoritmos - Técnicas de Programação. 2. ed. São Paulo: Érica, 2015.)
Com base no material que você estudou, escreva sobre algoritmos de busca sequencial e binária, dando exemplos e buscando apresentar as diferenças.
Soluções para a tarefa
Uma busca binária começará examinando o item do meio. Se esse item for aquele que estamos procurando, a busca termina. Se não for o item correto, podemos usar a natureza ordenada da lista para eliminar a metade dos itens restantes.
A busca sequencial é o algoritmo mais simples de busca:
- Percorra todo o vetor comparando a chave com o valor de cada
posição.
- Se for igual para alguma posição, então devolva esta posição.
- Se o vetor todo foi percorrido então devolva -1.
A busca binária é um algoritmo um pouco mais sofisticado. E mais eficiente, mas requer que o vetor esteja ordenado pelos valores da chave de busca.
Espero ter ajudado.
Resposta:
Com o crescente volume de dados se faz necessário algorítimos cada vez mais otimizados para dar conta da tarefa. De maneira generalista existem dois tipos de estratégia, a linear ou sequencial e a binária.
Na pesquisa linear será percorrido todo o vetor até encontrar a chave retornando esse valor, caso contrário irá informar que não obteve sucesso na busca.
Ex: num vetor que possui os números de 1 a 10 ao pesquisar o número 9 a pesquisa irá percorrer do número 1 até o 9 e retornar esse valor. Caso seja solicitado algo que não esteja nesse vetor informará que não obteve sucesso.
Já a pesquisa binária trata-se de um algorítimo mais eficiente, pois ele presume que o valor solicitado encontra-se próximo do meio do vetor, sendo assim, ele divide o vetor em dois eliminando metade dele neste primeiro momento para fazer a busca, caso não encontre ele pega a outra metade e repete o mesmo processo até encontrar a chave ou até percorrer todos os valores sem êxito.
Explicação:
já está explicada