Horários de atendimento:

Terça-feira: 15:00h - 17:00h

Sexta-feira: 15:00h - 17:00h

Para garantir seu atendimento, reserve o horário com antecedência.

*Durante o ERE o atendimento será virtual.


Repositório de códigos

Bubble Sort (Método bolha)


Descrição

Um dos algoritmos mais simples e intuitivos para a ordenação de vetores. Percorremos o vetor inteiro comparando elementos adjacentes (dois a dois). Sempre que dois elementos estiverem fora de ordem, suas posições são trocadas.

Exemplos

Java

         
import java.util.Random;
public class bolha {
    public static void main(String[] args){
        Random gerador = new Random();
        int numeros [] = new int[10];
        // Preenchendo o vetor com números aleatórios
        for (int i =0; i < numeros.length; ++i)
            numeros[i] = gerador.nextInt(100);

            // Bubble Sort - O(n^2)
        int aux;
        for (int i=0; i < numeros.length; ++i){
            for (int j=i; j < numeros.length; ++j){
                if (numeros[i]>numeros[j]){
                    aux = numeros[i];
                    numeros[i] = numeros[j];
                    numeros[j] = aux;
                }
            }
        }

        for (int i=0; i<numeros.length; ++i)
            System.out.println(numeros[i] + " ");
    }
}
         
         

Python

         
#!/usr/bin/python
# -*- coding: utf-8 -*-
from random import randint
numeros = []
for i in range(10):
    numeros.append(randint(0,100))
aux = 0
for i in range(len(numeros)):
    for j in range(i, len(numeros)):
        if numeros[i]>numeros[j]:
            aux = numeros[i]
            numeros[i] = numeros[j]
            numeros[j] = aux
        
for i in range(len(numeros)):
    print (numeros[i], " ", end='')
         
         

C++

         
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
    int numeros[10];
    const int TAM = 10;
    // Preenchendo o vetor com numeros aleatorios
    unsigned seed = time(0);
    srand(seed);
    for (int i=0; i<TAM; ++i)
        numeros[i] = rand()%100;
    
    // Bubble Sort - O(n^2)
    int aux;
    for (int i=0; i<TAM; ++i){
        for (int j=i; j<TAM; ++j){
            if (numeros[i]>numeros[j]){
                aux = numeros[i];
                numeros[i] = numeros[j];
                numeros[j] = aux;
            }
        }
    }
    for (int i=0; i<TAM; ++i)
        cout << numeros[i] << " ";
    return 0;
}
         
         

Upcoming Events:

Atividades suspensas