Cum sunt implementate și funcționează principalele algoritme de sortare a datelor?
sobes.tech AI
Răspuns de la AI
Algoritmii principali de sortare a datelor includ:
-
Sortarea cu bule (Bubble Sort): compară elementele adiacente și le schimbă dacă sunt în ordinea greșită. Se repetă până când array-ul este sortat.
-
Sortarea prin inserție (Insertion Sort): construiește o secvență sortată prin inserarea fiecărui element nou în poziția corectă.
-
Sortarea prin selecție (Selection Sort): la fiecare pas, selectează cel mai mic element din partea nesortată și îl schimbă cu primul element din acea parte.
-
Sortarea rapidă (Quick Sort): alege un element pivot, împarte array-ul în părți cu elemente mai mici și mai mari decât pivotul și sortează aceste părți recursiv.
-
Sortarea prin fuziune (Merge Sort): împarte recursiv array-ul în jumătăți, le sortează și le unește înapoi într-un array sortat.
Exemplu de sortare rapidă în 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]))
Fiecare algoritm are avantajele și dezavantajele sale în ceea ce privește viteza și consumul de memorie.