Buscar

Implementação de Busca Binária em C/C++

Prévia do material em texto

ESTRUTURA DE DADOS I
ATIVIDADES DA AULA 04
Faça um programa na linguagem C/C++ que implemente o método de Busca Binária. O programa deverá conter um vetor alocado dinamicamente de tamanho n, onde n deverá ser fornecido pelo usuário. A seguir, o programa deverá solicitar ao usuário que informe os n valores para o vetor. Feito isso, o programa também deverá pedir para que o usuário informe o valor a ser buscado. Por fim, o programa deverá mostrar na tela o resultado da busca. Obs: suponha que os valores serão fornecidos pelo usuário já ordenados.
#include <iostream>
#include <vector>
using namespace std;
int main()
{
 int n=0;
 cout << "Informe a quantidade de numeros do vetor : ";
 cin>>n;
 int *V1 = new int[n];
 if(*V1==NULL){
 cout<<"Erro de alocação. Finalizando."<<endl;
 return -1;
 }
 
 for(int i=0; i<n; i++)
 {
 cout<<"Informe o numero que compõe a posição "<< i <<" do vetor: ";
 cin>>V1[i];
 }
 int x, esq, dir, meio;
 cout << "Informe o valor a ser buscado : ";
 cin>>x;
 esq = -1;
 dir = n;
 while(esq <(dir-1)){
 meio=(esq+dir)/2;
 if(V1[meio]<x){
 esq=meio;
 }else{
 dir=meio;
 }
 }
 if(V1[dir]==x){
 cout << "O valor foi encontrado. ";
 }else{
 cout << "O valor não foi encontrado. ";
 };
 delete[] V1;
 if(*V1==NULL){
 cout<<"Desalocação com êxito"<<endl;
 }
 return 0;
}

Continue navegando

Outros materiais