DeLucca 0 Denunciar post Postado Abril 13, 2015 Olá pessoal como vai? Estou iniciando meus estudos em java, e parei no bubblesort, porém tenho uma pequena dúvida sobre o entendimento dele, staticvoidbubbleSort(int[] vetor) { intaux= 0; for(inti = 0; i < vetor.length-1; i++) { for(intj = 0; j < vetor.length-i -1; j++) { if(vetor[j] > vetor[j+1]) { aux= vetor[j]; vetor[j] = vetor[j+1]; vetor[j+1] = aux; } } } } Basicamente o bubbleSort é ordenação por troca, certo? pelo que estudei dependendo dos elementos no vetor, o resultado ja pode ser obtido antes do final das iterações, ou seja encerrar o processo quando os elementos ja estiverem em ordem. A minha dúvida é, como eu faço isso? Compartilhar este post Link para o post Compartilhar em outros sites
KhaosDoctor 242 Denunciar post Postado Abril 15, 2015 O processo deve parar automaticamente quando ele estiver ordenado. A ideia é você percorrer o array N vezes e ir jogando sempre o maior elemento para o topo e recomeçando a contagem do 0, uma vez que todos os elementos forem ordenados, não vai haver elemento que seja maior que elemento-1 ou seja, seu antecessor sempre será maior que ele e seu sucessor sempre menor. http://pt.wikipedia.org/wiki/Bubble_sort Compartilhar este post Link para o post Compartilhar em outros sites