Chamado de Demônio das trocas no livro “C completo e total” da editora MAKRON BOOKS LTDA, o método de ordenação bolha é o mais comum de todas as formas de ordenar, isso por ser fácil de implementar, porém é sem duvida a forma de ordenar mais criticada, já que trabalha fazendo varias comparações e quando necessário faz a troca de posições entre dois elementos adjacentes.
Agora que já sabemos um pouco sobre o método bolha vamos colocar em ordem crescente o seguinte vetor:
Vet [6] ={15, 18, 17, 10, 16, 12}
Para essa ordenação devemos sempre comparar dois elementos da esquerda para a direita e se preciso trocá-los de posição até que todos os números estejam em ordem crescente.
Veja agora na linguagem c como ficaria um algoritmo para ordenar esse vetor.
#include
#include
int main(int argc, char *argv[])
{
int aux, i, j; // declaração de uma variável auxiliar e dois contadores.
int vet[6]={15,18,17,10,16,12}; // Declaração do vetor já inicializado.
for(i=0; i<6; i++){ // As dois comandos for são úteis para percorrer o vetor e colocar os indices no vetor
for(j=0; j<6; j++){ // na hora de comparar, os dois devem contar até o numero de elementos do vetor
if(vet[i] < vet[j]) { // Esse if é responsável por comparar os elementos do vetor e troca-los de posição quando necessário.
aux=vet[i]; // Comando que atribui vet na posição i na variável aux.
vet[i]=vet[j]; // Aqui atribuímos vet na posição j no vet com indice i.
vet[j]=aux;} // Agora atribuímos o valor da variável aux em vet na posição j.
}
}
for(i=0;i<6;i++) // Aqui temos uma estrutura de repetição for que irá imprimir o vetor.
{
printf("%d ",vet[i]);
}
system("PAUSE");
return 0;
}
Este comentário foi removido pelo autor.
ResponderExcluir