
FennFelis
(usa Ubuntu)
Enviado em 08/06/2013 - 02:13h
serginho_linux escreveu:
Pessoal, olá a todos!
Gostaria de saber o que são esses dois tipos de pesquisa e como funciona, procurei no google já, li algo sobre mas acho que as informações estão muito "robotizadas"... não sei se entendem... Mas e ai? O desafio está lançado!
Busca sequencial é ideal para um arranjo não ordenado, onde você não sabe a ordem do elemento desejado, tendo que varrer todo o arranjo para encontra-lo.
Busca binária é ideal quando você tem o arranjo em ordem, segue o paradigma da divisão e conquista, dividindo o vetor pela metade e verificando qual o lado que o elemento desejado pode estar. Esse tipo de busca é meio complicado de entender, mas é bem óbvio.
Ex: Em um arranjo com 10 elementos, desejamos encontrar o elemento 45.
1 3 18 21 27 33 44 45 50 67
Dividindo o vetor em 2: fica
1 3 18 21 27 -> Arranjo com elementos à esquerda
33 44 45 50 67 -> Arranjo com elementos à direita
A busca binária compara com o 45 com o maior elemento do arranjo à esquerda e com o menor elemento do arranjo à direita, no ex: vê que 45 < 27 é falso, e que 45 > 33 é verdadeiro , então faz a recursão pros elementos à direita