Pesquisa binária: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Linha 59:
===Código em C===
<source lang="c">
//Implementação Iterativa:
 
int PesquisaBinaria ( int vet[], int chave, int Tam)
{
Linha 75 ⟶ 77:
}
return -1; // não encontrado
}
 
//Implementação Recursiva:
 
// x => chave | v[] => vetor ordenado | e => Limite inferior (esquerda) | d => Limite Superior (direita)
int PesquisaBinaria (int x, int v[], int e, int d)
{
int i = (e + d)/2;
if (v[i] == x)
return i;
if (e == d)
return -1; // Não foi encontrado
else if (v[i] < x)
PesquisaBinaria(x, v, i+1, d);
else
PesquisaBinaria(x, v, e, i-1);
}
</source>