Pesquisa Binária
Publicado por Enzo de Brito Ferber 31/05/2008
[ Hits: 10.496 ]
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; }
Divisores simultâneos de 2 números
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta