Olá, alguém pode me ajudar com o programa abaixo?
Gostaria que fossem feitos comentários linha a linha pra eu poder entender melhor…
Obrigado
[code]class Bubblesort
{
public static void main (String args [])
{
int num [] = new int [7];
num [0] = 6;
num [1] = 7;
num [2] = 4;
num [3] = 3;
num [4] = 5;
num [5] = 2;
num [6] = 1;
bolha (num);
for (int i=0; i < num.length; i++)
System.out.print (num[i] + ", ");
}
public static void bolha (int numeros [])
{
final int n = numeros.length;
int aux;
for (int i=0; i < n-1; i++)
{
for (int j=0; j < n-1-i; j++)
{
if (numeros [j] > numeros [j+1])
{
aux = numeros [j];
numeros[j] = numeros[j+1];
numeros [j+1] = aux;
}
}
}
}
}[/code]
[color=“red”]editado por Felipe: use bbcode para melhorar a visualizacao do codigo[/color]
int num [] = new int [7];
num [0] = 6;
num [1] = 7;
num [2] = 4;
num [3] = 3;
num [4] = 5;
num [5] = 2;
num [6] = 1;
essa parte ta gerando os numeros q vao ser ordenados
apos chamar o metodo bolha (q vai ordenar o array) essa parte:
for (int i=0; i < num.length; i++)
System.out.print (num[i] + ", ");
vai exibir o resultado…
public static void bolha (int numeros [])
{
final int n = numeros.length;
int aux;
for (int i=0; i < n-1; i++)
{
for (int j=0; j < n-1-i; j++)
{
if (numeros [j] > numeros [j+1])
{
aux = numeros [j];
numeros[j] = numeros[j+1];
numeros [j+1] = aux;
}
}
}
}
essa parte ordena o array…
o bublesort funciona assim: o for mais externo vai passando por todos os numeros (exceto o ultimo) e vai iniciando entrando, q vai passar por todos os numeros, e vai comparando com o seu proximo, dessa forma, os numeros maiores vao ficando no final, e o array vai ficando ordenado…