Inainte de a incepe
Plan de invatareAnaliza complexității
Notiune de bazaComplexitatea de timp
Foarte important
Află cum să evaluezi cât de rapid rulează un algoritm prin analiza complexității de timp.
Complexitatea de memorie
Destul de important
Învață să calculezi câtă memorie utilizează un algoritm pentru a-ți optimiza soluțiile.
Analiza amortizata
Destul de important
Descoperă cum să evaluezi performanța medie a unui algoritm prin analiza amortizată, ținând cont de execuțiile repetate.
Standard Library C++
Notiune de bazaVector
Destul de important
Noțiuni de bază despre vectori dinamici și operațiile comune asupra acestora.
String
Destul de important
Învață cum să manipulezi eficient șirurile de caractere din STL.
Stack
Destul de important
Descoperă cum să utilizezi structurile de date de stiva din STL
Queue
Destul de important
Descoperă cum să utilizezi structurile de date de coada din STL
Matematica
Notiune de bazaAlgoritmul lui Euclid
Destul de important
Învață să calculezi eficient cel mai mare divizor comun (GCD) folosind algoritmul lui Euclid.
Divizibilitate. Primalitate
Destul de important
Verificarea primalitații unui număr și principiile de bază de divizibilitate
Lucrul cu cifrele unui numar
Destul de important
Învață cum să manipulezi cifrele unui număr pentru a rezolva probleme complexe
Sortare si cautare
Notiune de bazaAlgoritmi de sortare
Nu foarte important
Algoritmi de sortare de baza pentru sortare eficienta
Sortare din STL
Foarte important
Învață cum să utilizezi funcțiile de sortare oferite de Standard Template Library (STL) în C++.
Cautare binara
Foarte important
Algoritmul de căutare binară folosit pentru a găsi rapid elemente într-un vector sortat.
Operatii cu secvente
Destul de important
Află cum să rezolvi probleme folosind diferite tehnici de manipulare a secvențelor unui vector
Interclasare
Nu foarte important
Combinarea a doi vectori sortati crescator intr-unul singur
Algoritmi Greedy
Destul de important
Introducere în abordările greedy, unde alegerea locală optimă este realizată în speranța de a găsi o soluție globală optimă
Introducere grafuri
Notiune de bazaNotiuni de teorie
Foarte important
Învață conceptele fundamentale din teoria grafurilor, de la noduri și muchii la grafuri orientate și neorientate.
Reprezentari ale grafurilor
Destul de important
Explorează diferite moduri de a reprezenta grafurile în memorie, cum ar fi listele de adiacență și matricile de adiacență
Parcurgeri BFS si DFS
Foarte important
Învață cum să explorezi grafurile folosind algoritmii de parcurgere DFS (Depth-First Search) și BFS (Breadth-First Search)