É o que você procurava?
Fale conosco para obter o trabalho completo, clique no botão ao lado
QUESTÃO 1
MV-ASSESSORIA
Consulte a nossa assessoria pelo Número:
Whats(15)98170-8778
Tele gram:(15)98170-8778
Entre em contato com a nossa equipe que vamos assessorar com esse trabalho
Mais de 10 anos no mercado acadêmico
A forma mais eficiente de efetuar pesquisa em um arranjo sem a necessidade de memórias auxiliares é a busca binária. A estratégia consiste em comparar a chave de busca (dado que estamos procurando) ao elemento do meio do arranjo (vetor). Se forem iguais, a busca terá terminado com sucesso, e o algoritmo retornará a respectiva posição na qual o elemento foi encontrado. Caso contrário, o vetor será divido em duas metades, e a pesquisa será repetida na metade “inferior”, se a chave de busca for menor do que o valor do meio do arranjo, ou na parte “superior”, se a chave de busca for maior. A cada iteração, a busca binária reduz a quantidade de possíveis candidatos pela metade. Isso faz com que a velocidade de busca seja extremamente rápida, já que, em tese, o algoritmo implementa uma heurística que elimina a necessidade de investigar porções do vetor cuja busca seria infrutífera. Observe o código-fonte a seguir que implementa a busca binária.
int buscaBinaria(int arranjo[], int i, int f, int chave)
{
if (f >= i)
{
int meio = i + (f - i)/2;
if (arranjo[meio] == chave)
return meio;
if (arranjo[meio] > chave)
return buscaBinaria(arranjo, i, meio-1, chave);
return buscaBinaria(arranjo, meio+1, f, chave);
}
return -1;
}
Responda:
a) Caso a chave de busca seja um valor que esteja ausente dentro do arranjo, qual é o valor que a função buscaBinaria() retornará?
b) Para que essa busca funcione, o arranjo precisa, necessariamente, estar ordenado? Se sim, explique o motivo.
c) Para que essa busca seja rápida, é preciso aplicar ela em um arranjo estático? Se sim, explique o motivo.
d) Imagine que essa função precisa ser invocada dentro da função main() de um programa em C. Dessa forma, escreva a linha de código (apenas uma linha) que invocaria essa função para realizar a busca em um arranjo denominado VET, que possui 10 elementos, e que a chave de busca é igual a 15.
Sua resposta deve ser enviada contendo a resposta para os quatro itens descritos acima.
ATENÇÃO:
A entrega deve ser feita exclusivamente por meio de um arquivo .doc, .docx ou .pdf. Utilize o template de entrega da atividade MAPA disponível no material da disciplina.
Antes de enviar a sua atividade, certifique-se de que respondeu a todas as perguntas e não se esqueceu de nenhum detalhe. Após o envio, não são permitas alterações. Por favor, não insista.
É o que você procurava?
Fale conosco para obter o trabalho completo, clique no botão ao lado
Trabalhos Relacionados:
Este é um ano de eleições, e sua equipe foi encarregada de simular uma urna eletrônica em linguagem C. O programa deve permitir que os usuários votem, apurem votos e verifiquem o percentual de cada candidato.
MAPA – ADSIS – LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO – 54_2024 Temos por certo que […]
MAPA – ADSIS – LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO – 54_2024
Temos por certo que os desafios sempre contribuem na aquisição de conhecimentos e competências desejadas. […]
Há situações em nossos programas em que precisamos repetir determinado trecho de código ou todo o código por várias vezes, em sequência. Nesses casos, utilizaremos uma estrutura de repetição que nos permite criar um loop para efetuar o processamento de um trecho de código quantas vezes forem necessárias.
ATIVIDADE 1 – ADSIS – LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO – 54_2024 Há situações em nossos […]
Deixe um comentário