Questão nº 31

Questão de Tecnologia da Informação · FCC TRT5 2022 (nº 31)

FCC2022Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Ever comentário ↓

Usando o algoritmo Bubble Sort um técnico deseja ordenar o conteúdo de um array utilizando o código JavaScript abaixo, presente no corpo de uma página HTML.

<body>
    <script>
        var arr = [220, 63, 25, 8, 5, 7, 295, 589];
        for (var i = 0; i < arr.length; i++) {
            for (var j = 0; j < (arr.length - i - 1); j++) {
                if (arr[j] > arr[j + 1]) {
                    var temp = arr[j]

I

                    arr[j + 1] = temp
                }
            }
        }
        document.write(arr);
    </script>
</body>

Para que o array seja ordenado corretamente a lacuna I deve ser corretamente preenchida com

Resposta comentada

Gabarito Alternativa E

O Bubble Sort é um algoritmo de ordenação que funciona comparando elementos adjacentes (vizinhos) de uma lista e trocando-os de lugar se estiverem na ordem errada, repetindo esse processo até que a lista esteja totalmente ordenada.

(A) Incorreta: arr[j] = arr[j + i] não faz parte de uma troca de elementos adjacentes (arr[j] e arr[j+1]) e usa o índice i da laço externo, o que é incorreto para a lógica de comparação e troca do Bubble Sort.
(B) Incorreta: arr[i] = arr[j + 1] também utiliza o índice i de forma inadequada, pois a troca deve ocorrer entre arr[j] e arr[j+1], não envolvendo arr[i].
(C) Incorreta: arr[j] = arr[j - 1] atribuiria a arr[j] o valor do elemento anterior, o que não completa a troca entre arr[j] e arr[j+1] e levaria a uma ordenação incorreta.
(D) Incorreta: arr[j + 1] = arr[j + 1] é uma atribuição que não altera o valor de arr[j+1], não contribuindo para a troca de valores.
(E) Correta: Para realizar a troca de valores entre arr[j] e arr[j+1] usando uma variável temporária (temp), os passos são:

  1. var temp = arr[j] (guarda o valor de arr[j])
  2. arr[j] = arr[j + 1] (o valor de arr[j+1] é movido para arr[j])
  3. arr[j + 1] = temp (o valor original de arr[j], guardado em temp, é movido para arr[j+1])
    A lacuna I corresponde ao segundo passo, arr[j] = arr[j + 1], que é essencial para que a troca seja concluída corretamente.

Fonte: FCC TRT5 2022 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho