pessoal, tenho o seguinte exercício pra resolver:
Faça um teste de execução do método de ordenação bolha para: V={30, 40, 50, 20, 10}
Quantas operações críticas (comparações + trocas) foram necessárias?
Quantas varreduras são necessárias para detectar que o vetor está classificado?
Informe a complexidade do algoritmo BubbleSort nos casos: melhor, pior e caso médio
para isso criei o seguinte código, com as funções bubblesort e troca que a prof. da facul nos forneceu, mas tá dando erro e não to sabendo o que é, se tiver como alguém me explicar o que tá dando problema… segue o código:
[code]public class Exercicio1 {
public static void main (String [] args){
int v [] = new int [] {30, 40, 50, 20, 10};
bubbleSort(v);
}
public static void bubbleSort (int[] v) {
int cont = 0, var = 0; //cont para contar as comparações e var para contar as varreduras
for (int i = 0; i < v.length - 1; i++){
for (int j = 0; i < v.length - (1 - i); j++){
if (v[j] > v[j+1]){
troca(v, j, j+1);
cont ++;
}
cont ++;
var ++;
}
}
System.out.println("Operações críticas: " + cont);
System.out.println("Varreduras: " + var);
}
public static void troca (int [] v, int i, int j) {
int temp = v[i];
v[i] = v[j];
v[j] = temp;
}
}
[/code]