sábado, 26 de março de 2011

Pesquisa binária (Retorna o índice do elemento)

#include<stdio.h>
int buscaBinPos(int tam,int v[],int pesq)
{
int ini=0,fim=9;
while(ini<=fim)
{
int meio;
meio=(ini+fim)/2;
if(v[meio]==pesq)
{
return meio;
}
else if(v[meio]<pesq)
{
ini=meio+1;
}
else
{
fim=meio-1;
}
}
return ini;

}
int main (void)
{
int v[10]={4,5,12,22,23,34,56,76,83,90},pos,fun,x;
printf("Informe o valor a ser encontrado: ");
scanf("%d",&x);
fun=buscaBinPos(10,v,x);
printf("O valor esta ou deveria estar na posicao: %d",fun);
printf("\n\n");
return 0;
}

Nenhum comentário:

Postar um comentário