Sobes.tech
Junior — Middle

Como são implementados e funcionam os principais algoritmos de ordenação de dados?

sobes.tech IA

Resposta da IA

Os principais algoritmos de ordenação de dados incluem:

  • Ordenação Bubble (Bubble Sort): compara elementos adjacentes e troca-os se estiverem na ordem errada. Repete até que o array esteja ordenado.

  • Ordenação por Inserção (Insertion Sort): constrói uma sequência ordenada inserindo cada novo elemento no lugar certo.

  • Ordenação por Seleção (Selection Sort): a cada passo, seleciona o elemento mínimo da parte não ordenada e troca-o com o primeiro elemento dessa parte.

  • Ordenação Rápida (Quick Sort): escolhe um elemento pivô, divide o array em partes com elementos menores e maiores que o pivô, e ordena essas partes recursivamente.

  • Ordenação por Fusão (Merge Sort): divide recursivamente o array ao meio, ordena as partes e as combina em um array ordenado.

Exemplo de ordenação rápida em Python:

def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    pivot = arr[len(arr) // 2]
    left = [x for x in arr if x < pivot]
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    return quick_sort(left) + middle + quick_sort(right)

print(quick_sort([3,6,8,10,1,2,1]))

Cada algoritmo tem suas vantagens e desvantagens em termos de velocidade e consumo de memória.