Pular para o conteúdo principal

Questão de Programação — Java — CESGRANRIO 2012

ProgramaçãoJava
Código
cg052623
Banca
CESGRANRIO
Órgão
Transpetro
Ano
2012
Nível
Superior
Cargo
Analista de Sistemas Júnior - Infra-Estrutura
Imagem 027.jpgPara implementar a versão recursiva do algoritmo de pesquisa binária sobre um arranjo formado de números inteiros, um programador inexperiente construiu o método apresentado acima, usando a linguagem Java.Nesse método, a variável lista é um arranjo que armazena, em ordem não decrescente, os inteiros sobre os quais a pesquisa é realizada, e a variável tamanho corresponde à quantidade de elementos dessa lista.Quando a chave procurada estiver contida no arranjo, esse método deve retornar o índice da primeira posição na qual essa chave for encontrada.Porém, um programador mais experiente constatou que a definição do comando condicional que usa a constante true não contempla todos os casos.Uma expressão relacional que pode substituir a constante true para corrigir o método é a seguinte:
  1. AlimiteInferior < limiteSuperior
  2. Blista[temp-1] < chaveBusca
  3. Clista[temp+1] < chaveBusca
  4. Dlista[temp] < chaveBusca
  5. Elista[temp] > chaveBusca
Revelar gabarito e comentário

GabaritoD — lista[temp] < chaveBusca

Link permanente: /questoes/cg052623