Buscar

Os referidos algoritmos são recursos importantes que possibilitam melhor aproveitamento da grande quantidade de informação armazenada nos

Caro, aluno,

ao longo da Unidade foram abordados: a problemática do crescimento do volume de dados; conceitos e técnicas sobre algoritmos de busca, ordenação e armazenamento; bem como análise de complexidade. Os referidos algoritmos são recursos importantes que possibilitam melhor aproveitamento da grande quantidade de informação armazenada nos repositórios de dados. Estes assuntos proporcionaram a você uma ampla visão sobre o tema, sua aplicabilidade e importância no cenário tecnológico atual. (MANZANO, J. A. N. G.; LOURENÇO, A. E.; MATOS, E. Algoritmos - Técnicas de Programação. 2. ed. Sa~o Paulo: E´rica, 2015.)

Com base no material que você estudou, escreva sobre algoritmos de busca sequencial e binária, dando exemplos e buscando apresentar as diferenças.

Bons Estudos!

RESPOSTA

Antes de tudo devemos recapitular o que uma busca/pesquisa faz, nada mais que verificar a presença ou não de um elemento em um conjunto de dados que essa busca queira achar. O que diferencia é a forma de como essa pesquisa será feita, no nosso caso de estudo é a busca Binária e a Sequencial.

A Busca Sequencial é a forma mais simples de se fazer uma pesquisa, apartir do momento que se tem um vetor com suas informações preenchidas, o algoritmo de busca percorre índice por índice procurando e comparando o conteúdo o qual quer achar. A cada índice que é percorrido tem-se um retorno "sucesso" ou "insucesso".

Aqui temos um exemplo de algoritmo de Busca Sequencial em um vetor não ordenado:

int busca(int a[], int indice, int esq, int dir){

for(int i=esq; i<=dir;i++)

if(indice==a[i] return i;)

return -1;

}

No caso da Busca Binária é um método um pouco mais complexo e tem a exigência que o vetor esteja ordenado, ao contrário da busca sequencial que tanto faz se é ordenado ou não. A busca binária funciona da seguinte forma: Primeiro passo é a comparação do meio do vetor, caso ache o dado procurado a pesquisa retornada com sucesso, caso contrário; Segundo passo é que se a chave for menor, o procedimento é repetido na primeira metade do vetor, se a chave for maior, o procedimento é repetido na segunda metade do vetor. Assim o processo é repetido até que seja retornado com sucesso ou que acabeos itens do vetor.

E aqui um exemplo de algoritmo de busca binária:

int binaria(int a[], int indice, int esq, int dir){

while(dir>=esq){

int meio=(esq+dir)/2;

if(indice== a[meio]) return meio;

if(indice

dir=meio-1;

else esq = meio+1;

}

return -1;

}

💡 1 Resposta

User badge image

Bruno Espejo

Antes de tudo devemos recapitular o que uma busca/pesquisa faz, nada mais que verificar a presença ou não de um elemento em um conjunto de dados que essa busca queira achar. O que diferencia é a forma de como essa pesquisa será feita, no nosso caso de estudo é a busca Binária e a Sequencial.

A Busca Sequencial é a forma mais simples de se fazer uma pesquisa, apartir do momento que se tem um vetor com suas informações preenchidas, o algoritmo de busca percorre índice por índice procurando e comparando o conteúdo o qual quer achar. A cada índice que é percorrido tem-se um retorno "sucesso" ou "insucesso".

Aqui temos um exemplo de algoritmo de Busca Sequencial em um vetor não ordenado:

int busca(int a[], int indice, int esq, int dir){

for(int i=esq; i<=dir;i++)

if(indice==a[i] return i;)

return -1;

}

No caso da Busca Binária é um método um pouco mais complexo e tem a exigência que o vetor esteja ordenado, ao contrário da busca sequencial que tanto faz se é ordenado ou não. A busca binária funciona da seguinte forma: Primeiro passo é a comparação do meio do vetor, caso ache o dado procurado a pesquisa retornada com sucesso, caso contrário; Segundo passo é que se a chave for menor, o procedimento é repetido na primeira metade do vetor, se a chave for maior, o procedimento é repetido na segunda metade do vetor. Assim o processo é repetido até que seja retornado com sucesso ou que acabeos itens do vetor.

E aqui um exemplo de algoritmo de busca binária:

int binaria(int a[], int indice, int esq, int dir){

while(dir>=esq){

int meio=(esq+dir)/2;

if(indice== a[meio]) return meio;

if(indice

dir=meio-1;

else esq = meio+1;

}

return -1;

}


kkk

1
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais