SóProvas


ID
1177273
Banca
CESGRANRIO
Órgão
Banco da Amazônia
Ano
2014
Provas
Disciplina
Algoritmos e Estrutura de Dados
Assuntos

Considere utilizar o algoritmo Bubble Sort para ordenar, em ordem crescente, a sequência de números

                        17, 43, 37, 31, 8, 77, 52, 25.

Se a sequência original for a iteração zero, qual será a sequência de números da segunda iteração?

Alternativas
Comentários
  • questão certa é a letra c:

    pois 17, 43, 37, 31, 8, 77, 52, 25

    1º interação 17,37,31,8,43,52,25,77

    2° interação 17, 31, 8, 37, 43, 25, 52, 77


  • Acabei de olhar essa questão no site da Cesgranrio, o gabarito é letra C.

    Prova: http://www.cesgranrio.org.br/pdf/basa0114/provas/PROVA%203%20-%20BANCO%20DE%20DADOS.pdf

    Gabarito: http://www.cesgranrio.org.br/pdf/basa0114/basa0114_gabarito_prova02_03_04.pdf

  • BubbleSort (Bolha) - Definições

    Método de ordenação por troca

    Varre-se a lista trocando-se de posição os elementos adjacentes fora de ordem. Varre-se a lista até que não haja mais trocas e, neste caso, a lista está ordenada.

     

    ou

     

    Troca dois elementos consecutivos se estiverem fora de ordem

     

    1º 17 - 37 - 31 - 8 - 43 - 52 - 25 - 77

     

    2º 17 - 31 - 8 - 37 - 43 - 25 - 52 - 77

  • é, mas tem versão do bublesort que vai do fim para o começo do vetor no loop interno, e isso complica a questão

  • c-

    \\visualizar as iteracoes:

    import java.util.Arrays;

    public class Q{

       public static void main(String[] args) {

          // TODO Auto-generated method stub

          int i,j,aux;

          int arr[] = new int [] {17, 43, 37, 31, 8, 77, 52, 25};

          for (i=0; i <arr.length-1; i++) {

             for (j=0; j <arr.length-i-1; j++) {

                if (arr[j] > arr[j+1]) {

                   aux = arr[j];

                   arr[j] = arr[j+1];

                   arr[j+1] = aux;

                }

             }

             System.out.println(Arrays.toString(arr));

          }

          

       }

    }