Pesquisa binária é uma técnica de pesquisa usada para alocar a posição exata de um elemento necessário em uma matriz classificada. Ele divide a matriz em duas partes repetidamente do intervalo até encontrar o elemento exato em uma matriz.
Pesquisa binária às vezes é referido como
dividir e conquistar algoritmo porque divide a matriz em várias peças e executa a pesquisa até que o elemento seja encontrado. Binário
procurar é um método de pesquisa rápido e simples para encontrar o elemento em uma posição específica em tempo rápido.
Neste artigo, mostraremos como implementar Pesquisa binária na linguagem de programação C.
Como implementar a pesquisa binária em C
Desenvolvedores usam Pesquisa binária Para simplificar o processo de busca, pois é bastante benéfico para fornecer os resultados em um período muito curto. A complexidade do tempo do binário procurar Algoritmo é O (logn), que pode ser eficaz em um programa em que o conjunto de dados fornecido é muito grande para ser pesquisado linearmente.
O algoritmo de Pesquisa binária Em C funciona da seguinte maneira:
- Em primeiro lugar, você define o elemento dinâmico que deseja pesquisar.
- Se o valor do pivô = valor central, a pesquisa será concluída, mais.
- Compare o elemento pivô com o elemento central na matriz.
- Se o valor do pivô for < than the center element, it will search the element from left side of array to center element.
- Se o valor do pivô for> que o valor do elemento central, ele procurará do lado direito da matriz.
- Repita os dois últimos passos até obter o pivô.
A seguir, a implementação de Pesquisa binária Programa em C Language:
#incluir
int main ()
int i, esquerda, direita, meio, num, pivô, newarr [50];
printf ("Por favor, insira o número total de elemento:");
scanf ("%d", & num);
printf ("Digite %D elemento inteiro:", num);
para (i = 0; i < num; i++)
scanf ("%d", & newarr [i]);
printf ("Por favor, insira o valor que você pode encontrar:");
scanf ("%d", & pivot);
Esquerda = 0;
direita = num - 1;
meio = (esquerda+direita)/2;
enquanto (esquerda <= right)
If (Newarr [meio] < pivot)
esquerda = meio + 1;
caso contrário, se (newarr [meio] == pivot)
printf (" %d encontrado no local %d.num ", pivô, meio+1);
quebrar;
outro
direita = meio - 1;
meio = (esquerda + direita)/2;
se (esquerda> direita)
printf ("O elemento não é encontrado! %d não está presente na lista.num ", pivô);
retornar 0;
No código acima, primeiro inicializamos as variáveis e depois pegamos o número total de elementos do usuário por num variável e assumir valores na matriz do usuário até eu. Então, da variável pivô, decidimos o valor para corresponder e corresponder a partir do índice esquerdo 0 ao índice final. Então dividimos a matriz como meio = (esquerda+direita)/2. Depois disso, usamos o loop while para encontrar o pivô através da condição if else que encontra o elemento e gerar uma saída com o número do índice do elemento, se for encontrado, caso contrário, ele lançará um elemento não encontrado erro.
Aqui está a saída do código.
Conclusão
Pesquisa binária é um algoritmo poderoso para diminuir uma seleção de itens em uma matriz. Ele divide a seção da lista em metades que poderiam realmente conter o objeto ao meio e repetir o processo novamente até que haja apenas uma posição viável ou resultado restante. Nas diretrizes acima mencionadas, vimos o que Pesquisa binária é; E como podemos usar Pesquisa binária no código de idioma C. Em suma, a pesquisa binária é uma técnica de pesquisa muito útil na linguagem C.