Algorytmy i struktury danych w R
Zapytaj o struktury danych w R, a większość odpowiedzi wymieni wektory, listy, macierze, ramki danych i czynniki. Ta ścieżka dotyczy drugiego znaczenia: stosu, kolejki, listy wiązanej, kopca, drzewa i grafu z kursu algorytmów, a żadnej z tych struktur podstawowe R nie zapewnia. Budujesz każdą z nich w R, potem sortujesz, stosujesz rekurencję i przeszukujesz z nimi grafy, a na koniec rozwiązujesz oceniane zadania rekrutacyjne. Za darmo, w przeglądarce, z certyfikatem w większości kursów.
377 lekcje228 wyzwania702 pytania quizowe
- Dla początkujących
Pomoc AI przy programowaniu
Praktyczne, interaktywne lekcje
Narracja audio w każdej lekcji
Quizy sprawdzające wiedzę
Darmowe certyfikaty na tej ścieżce: 23
Algorytmy i struktury danych w R krok po kroku
Każdy krok to zestaw istniejących kursów Coddy, a każdy przycisk Start otwiera je w R. Trzy kursy, które nie są jeszcze prowadzone w R, są wymienione po krokach.
- 1Krok 1Kursy po kolei: 5
- 2Krok 2
Seria Struktury danych, część druga
Zacznij ten krokZacznijLista dwukierunkowa, kopce i kolejki priorytetowe, drzewa trie, grafy i samorównoważące się drzewo AVL. R indeksuje od 1, tak jak podręczniki rysują kopiec, więc dzieci węzła znajdują się pod2 * ii2 * i + 1bez przesunięcia do zapamiętania.ZacznijKursy po kolei: 5- Lista dwukierunkowa – struktury danych, część 614 lekcje6 wyzwania
- Kopce i kolejki priorytetowe — struktury danych, część 714 lekcje6 wyzwania
- Drzewa Trie — struktury danych #814 lekcje12 wyzwania
- Grafy – struktury danych, seria nr 914 lekcje12 wyzwania
- Drzewo AVL – struktury danych, seria #1016 lekcje6 wyzwania
- 3Krok 3
Algorytmy sortowania
Zacznij ten krokZacznijSortowanie bąbelkowe, przez wybieranie, przez wstawianie, przez scalanie, szybkie, przez kopcowanie, przez zliczanie i pozycyjne, napisane w R i oglądane w wizualizatorze. Samosort()pozwala wybrać sortowanie Shella, quicksort albo sortowanie pozycyjne przez argumentmethod. Po tym kroku wiesz, co oznacza ten wybór.ZacznijKursy po kolei: 8- Sortowanie bąbelkowe11 lekcje10 wyzwania
- Sortowanie przez wybieranie – seria DSA9 lekcje3 wyzwania54 pytania
- Sortowanie przez wstawianie – seria DSA9 lekcje3 wyzwania
- Sortowanie przez scalanie – seria DSA9 lekcje3 wyzwania52 pytania
- Sortowanie szybkie — seria DSA9 lekcje3 wyzwania52 pytania
- Sortowanie przez kopcowanie — seria DSA9 lekcje3 wyzwania54 pytania
- Sortowanie przez zliczanie – seria DSA9 lekcje3 wyzwania52 pytania
- Sortowanie radixowe — seria DSA9 lekcje3 wyzwania55 pytania
- 4Krok 4
Myślenie rekurencyjneOsobna strona
Zacznij ten krokZacznijWyzwania z rekurencji w R, gdzieoptions(expressions = 5000)ogranicza, jak głęboko mogą się zagnieżdżać wywołania, aRecallpozwala funkcji wywołać samą siebie bez powtarzania własnej nazwy. Każde wywołanie dostaje nowe środowisko, więc głęboka rekurencja kosztuje pamięć, a nie tylko czas. Programowanie dynamiczne i operacje na bitach są wymienione po krokach, bo prowadzi się je w Pythonie i C++.ZacznijOsobna strona - 5Krok 5
Algorytmy grafowe
Zacznij ten krokZacznijPrzeszukiwanie wszerz i w głąb, Dijkstra, Bellman-Ford, sortowanie topologiczne, Kruskal i Prim w R, na grafie zbudowanym w kroku drugim. Podstawowe R nie ma kolejki priorytetowej, więc kopiec z kroku drugiego to ten, którego potrzebuje algorytm Dijkstry, a to są właśnie algorytmy, które uruchamiają za ciebie pakiety sieciowe, takie jak igraph.ZacznijKursy po kolei: 7- Przeszukiwanie wszerz — algorytmy grafowe9 lekcje3 wyzwania54 pytania
- Przeszukiwanie w głąb — algorytmy grafowe9 lekcje3 wyzwania54 pytania
- Algorytm Dijkstry — algorytmy grafowe9 lekcje3 wyzwania54 pytania
- Algorytm Bellmana-Forda — algorytmy grafowe9 lekcje3 wyzwania54 pytania
- Sortowanie topologiczne – algorytmy grafowe9 lekcje3 wyzwania55 pytania
- Algorytm Kruskala — algorytmy grafowe9 lekcje3 wyzwania57 pytania
- Algorytm Prima – algorytmy grafowe9 lekcje3 wyzwania55 pytania
- 6Krok 6
Praktyka rekrutacyjna
Zacznij ten krokZacznijDziesięć pakietów wyzwań rekrutacyjnych i dwa banki zadań programistycznych w R, oceniane przez testy: nieznane zadania rozwiązywane bez samouczka, w języku, w którym już analizujesz dane.ZacznijKursy po kolei: 12- Wyzwania programistyczne na rozmowę kwalifikacyjną – zestaw I3 lekcje3 wyzwania
- Wyzwania programistyczne na rozmowę kwalifikacyjną — pakiet II3 lekcje3 wyzwania
- Wyzwania programistyczne na rozmowy kwalifikacyjne — pakiet III3 lekcje3 wyzwania
- Zadania rekrutacyjne z programowania – pakiet IV3 lekcje3 wyzwania
- Zadania rekrutacyjne z programowania — pakiet V3 lekcje3 wyzwania
- Wyzwania programistyczne na rozmowę kwalifikacyjną – pakiet VI3 lekcje3 wyzwania
- Wyzwania programistyczne na rozmowę kwalifikacyjną — zestaw VII3 lekcje3 wyzwania
- Wyzwania programistyczne na rozmowę kwalifikacyjną – zestaw VIII3 lekcje3 wyzwania
- Wyzwania programistyczne na rozmowę kwalifikacyjną – pakiet IX3 lekcje3 wyzwania
- Wyzwania programistyczne na rozmowę kwalifikacyjną – X3 lekcje3 wyzwania
- Zadania programistyczne32 lekcje31 wyzwania
- Zadania programistyczne: Tom 225 lekcje24 wyzwania
Ucz się w praktyce
Pisz prawdziwy kod, odpytuj bazy danych, twórz strony internetowe i opanuj prompty AI. Nasze interaktywne lekcje obejmują wszystkie umiejętności, których potrzebuje współczesny programista.
Buduj swoją serię
Ucz się regularnie i patrz, jak rosną twoje postępy! Śledź codzienny nawyk programowania, chroń serię dzięki zamrożeniom i zdobywaj nagrody za każdy dzień nauki.
12 dni serii
Wróć jutro, aby utrzymać serię!
January 2026
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
21
22
23
24
25
26
27
28
29
30
Podwójnie albo nic
Dzień 5 z 7
Zamrożenie serii
2 left
Programuj wszędzie
Zabierz naukę programowania ze sobą! Bez konfiguracji i pobierania plików: po prostu otwórz i zacznij kodować. Dostępne na iOS, Androida i w przeglądarce, z oceną 4,9 gwiazdki.
Nie uczysz się w pojedynkę
Rywalizuj w globalnych rankingach, zapraszaj znajomych po nagrody i świętujcie wspólnie swoje sukcesy. Z przyjaciółmi programuje się lepiej!
Każdy sposób nauki
Czytaj, słuchaj, sprawdzaj się, pytaj AI albo wracaj do tego, co już znasz. Każda lekcja dopasowuje się do ciebie.
Zmienna to nazwany pojemnik przechowujący wartość, do której możesz później odwołać się w programie.
W Pythonie tworzysz ją, pisząc nazwę, znak równości, a potem wartość, którą chcesz zapisać.
Wartość może się zmieniać: ponowne przypisanie po prostu wskazuje nazwą nową wartość.
Zdobądź certyfikat
Zdobywaj certyfikaty za każdy ukończony kurs. Dodaj je do profilu na LinkedIn i CV, aby pokazać pracodawcom swoje umiejętności programistyczne.
Dlaczego warto uczyć się algorytmów w R z Coddy
- Te inne struktury danych. Własne typy R to to, co większość samouczków R nazywa strukturami danych, i uczy ich kurs R w Coddy. Kurs algorytmów oznacza stosy, kolejki, listy wiązane, kopce, drzewa i grafy, których podstawowe R nie zapewnia. Budowanie ich w R to sposób, w jaki analityk przyswaja tę połowę informatyki, którą praca z danymi zwykle pomija.
- Ile kosztuje semantyka R. R kopiuje przy modyfikacji, więc wektor powiększany przez
c(x, value)w pętli jest kopiowany przy każdym przejściu, co daje czas kwadratowy dla zadania liniowego. Rozwiązaniem jest wcześniejsza alokacja. Środowiska mają semantykę referencyjną i wyszukiwanie haszowane, co czyni je mapą haszującą R i naturalnym miejscem na węzeł, który chcesz zmieniać w miejscu. - Prawie cała ścieżka w R. Każda struktura danych, sortowanie, algorytm grafowy, wyzwanie z rekurencji i pakiet rekrutacyjny jest prowadzony w R. Trzy kursy są prowadzone w innych językach i wymienione po krokach, każdy z linkiem: programowanie dynamiczne i seria rekrutacyjna w Pythonie oraz operacje na bitach w C++. Operacje na bitach wyglądają z perspektywy R inaczej, bo
&i|to operatory logiczne, a operacje bitowe to funkcje, takie jakbitwAnd. - Oceniane jak na rozmowie rekrutacyjnej. Każda lekcja kończy się wyzwaniem w R sprawdzanym przez testy, a gdy coś nie przechodzi, Bugsy czyta twój kod i naprowadza cię na poprawkę, nie podając gotowej odpowiedzi. Darmowy certyfikat w większości kursów, każdy do zweryfikowania pod własnym adresem URL.
Najczęstsze pytania o algorytmy i struktury danych w R
Czy ta ścieżka dotyczy struktur danych R, takich jak wektory i ramki danych?
Czy R nadaje się do nauki algorytmów i struktur danych?
Jak zrobić mapę haszującą w R?
h <- new.env(), potem h[[key]] <- value, żeby zapisać, i h[[key]], żeby odczytać, co dla brakującego klucza daje NULL. Środowiska są haszowane, mają klucze tekstowe i semantykę referencyjną, więc funkcja, która zmienia środowisko, zmienia je także dla wywołującego, inaczej niż wektor czy lista. Nazwana lista wygląda jak słownik, ale zachowuje się jak wartość: zmień ją w funkcji, a kopia wywołującego pozostanie nietknięta.Czy głęboka rekurencja w R kończy się błędem?
options(expressions = 5000) ogranicza, jak głęboko może się zagnieżdżać ewaluacja, a głęboka rekurencja, na przykład przeszukiwanie w głąb wzdłuż długiego łańcucha, zatrzymuje się błędem evaluation nested too deeply. Podniesienie tej opcji daje trochę miejsca, ale niezawodnym rozwiązaniem jest jawny stos w pętli, czyli struktura budowana w kroku pierwszym.Które kursy z tej ścieżki nie są prowadzone w R?
&, |, ^ i << z C++ stają się funkcjami bitwAnd, bitwOr, bitwXor i bitwShiftL.