Sortowanie tablic z użyciem algorytmów sortowania – implementacja sortowania szybkiego
Założenie: Nauczyć się implementować algorytm sortowania szybkiego (QuickSort) w PHP i zrozumieć jego działanie.
Krok po kroku:
- Deklaracja funkcji QuickSort: Funkcja rekurencyjnie sortuje tablicę.
function quickSort(array $array): array { if (count($array) < 2) { return $array; } $pivot = $array[0]; $less = []; $equal = []; $greater = []; foreach ($array as $value) { if ($value < $pivot) { $less[] = $value; } elseif ($value == $pivot) { $equal[] = $value; } else { $greater[] = $value; } } return array_merge(quickSort($less), $equal, quickSort($greater)); }
- Przykład użycia: Tworzymy przykładową tablicę i sortujemy ją za pomocą funkcji `quickSort`.
$numbers = [5, 2, 9, 1, 5, 6]; $sortedNumbers = quickSort($numbers); print_r($sortedNumbers); // Wyświetla posortowaną tablicę
- Wynik: Funkcja `print_r` wyświetli posortowaną tablicę. Złożoność czasowa QuickSort wynosi O(n log n) w najlepszym i średnim przypadku, a O(n^2) w najgorszym (co zdarza się rzadko, np. dla już posortowanej tablicy).
Ten przykład pokazuje podstawy implementacji algorytmu sortowania szybkiego w PHP. Zachęcamy do dalszego zgłębiania tematu i eksperymentowania z różnymi algorytmami sortowania!