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.