Pesquisa Binária
Publicado por Enzo de Brito Ferber 31/05/2008
[ Hits: 10.657 ]
Homepage: http://www.maximasonorizacao.com.br
Este programa ilustra o algoritmo de pesquisa binária, que é o algoritmo de pesquisa mais rápido para dados ordenados (crescente / decrescente).
Espero que ajude alguém algum dia ;)
// binsearch.c #include <stdio.h> #include <stdlib.h> int bin_search (int *vet, int info, int size) { int low=0, mid, high=(size - 1); while (low <= high) { mid = (low + high) / 2; if (vet[mid] == info) return mid; if (vet[mid] > info) high = mid - 1; if (vet[mid] < info) low = mid + 1; } return (-1); } int main (int argc, char **argv) { int info, i; int *vet; if (argc < 3) { printf("Uso: %s <tamanho_vetor> <info>\n", argv[0]); return 0; } // argv[1] >> tamanho do vetor // argv[2] >> informacao procurada no vetor vet = (int*) malloc ( atoi(argv[1]) * sizeof(int)); info = atoi(argv[2]); for (i = 0; i < atoi(argv[1]); i++) *(vet+i) = (i + 1); printf("Posicao de %d: %d\n", info, bin_search(vet, info, atoi(argv[1]) )); return 0; }
char2.c - Programa com caracteres
Saber se um número é primo (algoritmo super simples)
Nenhum coment�rio foi encontrado.
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Unbuntu não atualiza o firmware [RESOLVIDO] (2)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (0)
Dúvidas sobre a originalidade de conteúdos online (10)
Erro de interface de Rede no Virt Manager dentro Debian 13 KDE [RESOLV... (12)