Implementacja (część 2)
Lekcja 6 z 9 w kursie Sortowanie radixowe — seria DSA w Coddy.
Teraz wykonujemy sortowanie przez zliczanie dla każdej pozycji cyfry.
Wyzwanie
ŚredniTeraz połącz wszystko w kompletny algorytm.
Napisz funkcję o nazwie radixSort, która przyjmuje tablicę nieujemnych liczb całkowitych i zwraca ją posortowaną w rosnącej kolejności, używając sortowania przez zliczanie dla każdej pozycji cyfry.
Znajdź największą wartość, a następnie wykonuj pętlę z exp = 1, 10, 100, ... Dopóki na tej pozycji nadal znajduje się cyfra, uruchamiaj countingSortByDigit i mnoż exp przez 10.
Użyj ponownie sortowania przez zliczanie z poprzedniej lekcji jako funkcji pomocniczej.
Spróbuj swoich sił
#include <stdlib.h>
int* radixSort(int* arr, int arr_size, int* returnSize) {
// Napisz kod tutaj
*returnSize = arr_size;
return arr;
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Sortowanie radixowe — seria DSA
2Algorytm
Jak to działa?PseudokodImplementacja (część 1)Implementacja (część 2)Poćwicz samodzielnie: Kompilator C online