Pular para o conteúdo

Computação 2ª série Prova

Busca, ordenação e eficiência de algoritmos

Prova com 12 questões sobre busca linear e binária, método da bolha, crescimento do tempo de execução, uso de memória e energia, funções como parâmetro, compiladores e métricas de software.

  • 12 questões
  • cerca de 55 minutos

Computação, 2ª série: Busca, ordenação e eficiência de algoritmos

  1. Uma lista ordenada tem 1 000 nomes. Na busca binária, compara-se o nome procurado com o elemento do meio e descarta-se a metade em que ele não pode estar, repetindo o processo. No pior caso, o número de comparações necessárias é de cerca de:

    1. 500
    2. 1 000
    3. 10
    4. 100
    5. 32
  2. Para que a busca binária funcione corretamente, é necessário que:

    1. a lista tenha um número par de elementos
    2. a lista esteja ordenada
    3. a lista tenha menos de 100 elementos
    4. o elemento procurado esteja no meio da lista
    5. a lista não tenha números negativos
  3. No método da bolha (bubble sort), percorre-se a lista comparando pares vizinhos e trocando-os de lugar quando estão fora de ordem. Aplicando uma única passagem completa à lista [5, 1, 4, 2], em ordem crescente, obtém-se:

    1. [1, 2, 4, 5]
    2. [1, 5, 4, 2]
    3. [4, 1, 2, 5]
    4. [1, 4, 2, 5]
    5. [5, 4, 2, 1]
  4. Um programa usa dois laços aninhados que percorrem uma lista de n elementos, executando cerca de n² operações. Para n = 1 000, ele leva 2 segundos. Mantidas as condições, para n = 4 000 a estimativa de tempo é:

    1. 8 s
    2. 16 s
    3. 4 s
    4. 64 s
    5. 32 s
  5. Um programa passou a guardar em uma tabela os resultados de cálculos já feitos, para não precisar refazê-los quando aparecem de novo (técnica chamada memoização). O efeito esperado é:

    1. reduzir o tempo, usando mais memória
    2. reduzir o tempo de execução e também a memória usada
    3. aumentar o tempo, economizando memória
    4. não alterar o tempo nem a memória
    5. eliminar a necessidade de processador
  6. Um aplicativo de celular verifica a localização do usuário a cada segundo, mesmo quando isso não é necessário. Além de ocupar o processador, esse comportamento afeta principalmente:

    1. a resolução da câmera
    2. o tamanho da tela
    3. o consumo de energia
    4. a velocidade do teclado
    5. a capacidade do chip SIM
  7. Em muitas linguagens de programação, é possível chamar ordenar(lista, criterio), em que criterio é uma outra função, escrita pelo programador, que diz qual de dois elementos vem primeiro. Esse recurso é um exemplo de:

    1. um algoritmo recebendo outro como entrada
    2. um laço infinito que nunca termina de executar
    3. um vírus que altera outros programas
    4. uma técnica de compressão de dados
    5. um algoritmo que não tem entrada
  8. Um compilador é um programa que:

    1. conecta o computador à internet
    2. apaga arquivos duplicados do disco
    3. protege o computador contra invasões
    4. mede a velocidade do processador
    5. traduz código-fonte em um programa executável
  9. Uma escola quer escolher um aplicativo de estudos que funcione bem nos celulares antigos dos estudantes, que têm pouca memória disponível. A tabela mostra os resultados de testes com três aplicativos.

    AplicativoTempo de respostaMemória usadaFalhas a cada 1 000 usos
    A1,2 s300 MB5
    B0,8 s900 MB2
    C1,5 s120 MB3

    Considerando a prioridade da escola, a escolha mais adequada é:

    1. B, por ser o mais rápido e o de menos falhas
    2. A, por ter valores intermediários em tudo
    3. B, pois memória não influencia celulares antigos
    4. C, que usa menos memória e tem poucas falhas
    5. A, pois tem o maior número de falhas registradas
  10. Qual destes itens é uma métrica objetiva para avaliar a qualidade de um software?

    1. A cor do ícone do aplicativo
    2. O número de letras do nome do programa
    3. A quantidade de falhas a cada 1 000 usos
    4. A opinião de uma única pessoa sobre o logotipo
    5. O país em que a empresa tem sede
  11. Dobrar o tamanho de uma lista ordenada aumenta em apenas cerca de uma comparação o pior caso da busca binária.

    (   ) Verdadeiro   (   ) Falso

  12. a) Explique a diferença entre busca linear e busca binária, usando como exemplo a procura de um nome em uma lista de chamada.

    b) Em que situação a busca linear pode ser a melhor escolha? Justifique considerando os recursos envolvidos.

ProvaPiloto · provapiloto.com.br

Já usou com a sua turma?

Conte com um toque. Isso ajuda outros professores a escolher.

Usei em sala Entre na sua conta para contar.

Para continuar o assunto