Implementacja (część 1)
Lekcja 5 z 9 w kursie Sortowanie przez scalanie – seria DSA w Coddy.
Zbudujemy algorytm sortowania przez scalanie, zaczynając od jego podstawowej operacji.
Wyzwanie
ŁatwySercem sortowania przez scalanie jest połączenie dwóch już posortowanych list w jedną posortowaną listę. Najpierw to zbudujmy.
Napisz funkcję o nazwie merge, która przyjmuje dwie posortowane tablice liczb całkowitych, left i right, i zwraca jedną posortowaną tablicę zawierającą wszystkie ich elementy.
Przechodź przez obie tablice jednocześnie: wielokrotnie wybieraj mniejszy z dwóch pierwszych elementów. Gdy skończą się elementy w jednej tablicy, dołącz wszystkie pozostałe z drugiej.
Spróbuj swoich sił
#include <stdlib.h>
int* merge(int* left, int left_size, int* right, int right_size, int* returnSize) {
// Napisz kod tutaj
*returnSize = 0;
return left;
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Sortowanie przez scalanie – seria DSA
2Algorytm
Jak to działa?PseudokodImplementacja (część 1)Implementacja (część 2)Poćwicz samodzielnie: Kompilator C online