Exemplo de algoritmo de pesquisa binária em C ++
- 2262
- 62
- Leroy Lebsack
Aqui está um exemplo simples de pesquisa binária em c++. O exemplo primeiro cria um vetor de 4 000 000 números e depois faz uma chamada de função da função principal para binária_search.
Pesquisa binária.cpp
#include #include usando namespace std; Void binary_search (const vetor& números, int valor); int main () vetor my_numbers; para (int i = 0; i<4000000; i++) my_numbers.push_back(i); cout << "Size of vector my_nymbers :" << my_numbers.size() << endl; Binary_Search(my_numbers, 2); Binary_Search(my_numbers, 23); Binary_Search(my_numbers, 234); Binary_Search(my_numbers, 7655); Binary_Search(my_numbers, 10101); Binary_Search(my_numbers, 895543); Binary_Search(my_numbers, 3785111); return 0; void Binary_Search(const vector< int> & my_numbers, int key) int iteração = 0, esquerda = 0, direita = my_numbers.size ()-1, meio; enquanto (esquerda <= right) iteration++; mid = (int) ((left + right) / 2); if (key == my_numbers[mid]) cout << "Binary search found " << my_numbers[mid] << " after " << iteration << " iterations.\n"; iteration++; return; else if (key > my_numbers [MID]) esquerda = MID + 1; else Right = Mid - 1; cout << "Binary search did not found " << my_numbers[mid] << " after " << iteration << " iterations.\n"; return;
Compilar:
$ G ++ Pesquisa binária.CPP -O Pesquisa binária
Correr:
$ ./Pesquisa binária
Saída:
Tamanho do vetor my_nymbers: 4000000 Pesquisa binária encontrada 2 após 20 iterações. Pesquisa binária encontrada 23 após 21 iterações. Pesquisa binária encontrada 234 após 22 iterações. Pesquisa binária encontrada 7655 após 21 iterações. Pesquisa binária encontrada 10101 após 22 iterações. Pesquisa binária encontrada 895543 após 19 iterações. Pesquisa binária encontrada 3785111 após 22 iterações.
Tutoriais do Linux relacionados:
- Introdução às Loops de JavaScript
- Como melhorar a renderização da fonte do Firefox no Linux
- Ansible Loops Exemplos e Introdução
- VIM Editor básico no Linux
- Como instalar G ++ o compilador C ++ no Ubuntu 22.04 LTS…
- Sistema Linux Hung? Como escapar para a linha de comando e…
- Loops aninhados em scripts de basquete
- Exemplos de comando Kubectl (folha de dicas)
- Como verificar uma saúde do disco rígido na linha de comando…
- Como trabalhar com a API de Rest WooCommerce com Python