Dados Estruturados: possuir somente dados não ajuda em nada

Busca de Dados
Busca de Dados

Informática

30/03/2015

Em java há vários meios (algoritmos) para recuperar os dados, entre eles temos   a pesquisa sequencial, pesquisa binária e pesquisa ternária. Será mostrado um algoritmo em java de pesquisa binária que é mais eficiente, quando falamos de elementos ordenados, em vez de cab, temos abc uma ordem de elementos.


O cálculo da posição média é feito com A EXPRESSÃO:

medi = (mini + max)/2 só que esta expressão dá overflow. A forma eficiente de calcular média é dada pela EXPRESSÃO:

medi = (mini + max) >>> 1;

static int pesquisaBinaria (int [] pSeq, int pInicio, int pFim, int pval);

{

int mini = pInicio, max = pFim, medi;

while (mini <= max)

{

medi = (mini + max) >> 1; //cálculo da posição média

if( (pSeq [medi] < pval) mini = medi + 1;

else if (pSeq [medi] > pval) max = med -1;

else return medi;

}

return -1; // pesquisa sem sucesso

}


Obs: este algoritmo só funciona quando temos uma sequência ordenada dos elementos

 

 

Esta apresentação reflete a opinião pessoal do autor sobre o tema, podendo não refletir a posição oficial do Portal Educação.


Cristian Fernandes Rodrigues

por Cristian Fernandes Rodrigues

Principais Qualificações Analista de Sistemas e Escritor Formação SUPERIOR CURSANDO: Analise e Desenvolvimentismo de Sistemas. Game Developer Inglês Avançado. Informática Linguagens de Programação C++, Java, Delphi C#, Javascript e PHP

Portal Educação

UOL CURSOS TECNOLOGIA EDUCACIONAL LTDA, com sede na cidade de São Paulo, SP, na Alameda Barão de Limeira, 425, 7º andar - Santa Cecília CEP 01202-001 CNPJ: 17.543.049/0001-93