Sobes.tech
Junior — Middle

Jak jsou implementovány a fungují hlavní algoritmy třídění dat?

sobes.tech AI

Odpověď od AI

Hlavní algoritmy třídění dat zahrnují:

  • Bublinkové třídění (Bubble Sort): porovnává sousední prvky a mění je, pokud jsou v nesprávném pořadí. Opakuje se, dokud není pole seřazeno.

  • Vkládací třídění (Insertion Sort): vytváří seřazenou posloupnost vkládáním každého nového prvku na správné místo.

  • Výběrové třídění (Selection Sort): při každém kroku vybírá nejmenší prvek z neseřazené části a zamění ho s prvním prvkem této části.

  • Rychlé třídění (Quick Sort): vybírá pivot, dělí pole na části s menšími a většími prvky než pivot a tyto části rekurzivně třídí.

  • Sloučení třídění (Merge Sort): rekurzivně dělí pole na poloviny, třídí je a znovu je spojuje do seřazeného pole.

Příklad rychlého třídění v Pythonu:

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]))

Každý algoritmus má své výhody a nevýhody z hlediska rychlosti a spotřeby paměti.