Academia de Reconversie Algorithmic Thinking

Acest program acoperă esența programării și a structurilor de date, de la conceptele fundamentale până la algoritmi avansați. Participanții vor învăța să dezvolte algoritmi eficienți, să lucreze cu colecții de date, să prelucreze șiruri de caractere și să gestioneze resursele de memorie. Programul îi va introduce în lumea sortării și căutării, cu accent pe complexitatea algoritmilor și pe abordările eficiente de sortare. Vor explora, de asemenea, structurile de date liniare și ierarhice, precum stack-ul, queue-ul și arborii binari de căutare

Se recomandă parcurgerea programului în paralel cu învățarea unui limbaj de programare, la alegere, pentru a exersa sintaxa acestuia în etapa de implementare a algoritmilor. Structura programului urmărește ordinea de învățare a unui limbaj de programare, astfel încât la momentul implementării diferiților algoritmi, programanții să aibă toate noțiunile de sintaxă necesare. Fiecare lecție va include exemple de implementare într-un limbaj ușor de înțeles, cum ar fi JavaScript sau Java, pentru a ajuta programanții să înțeleagă conceptele mai bine.

Cui i se adresează?

Programul “Algorithmic Thinking” este recomandat tuturor programatorilor la început de drum, indiferent de tehnologiile sau limbajele de programare preferate. Noțiunile pe care le înveți aici sunt utile și aplicabile pentru orice tip de aplicații pe care le-ai putea dezvolta.

Cum se desfășoară cursul:

Cum se desfășoară cursul:

  • Materiale de studiu în format video înregistrat și activități practice. 
  • Teste intermediare prin care îți vei evalua progresul. 
  • Întâlniri periodice cu trainerii în ședințe tip live-virtual. 
  • Examen final, în urma promovării căruia primești o diplomă de finalizare program.

Ce vei învăța?

Urmând acest program, participanții vor învăța să: 

  • Înțeleagă conceptele fundamentale ale algoritmilor și structurilor de date.
  • Descrie logic etapele construirii unui algoritm utilizând pseudocod. 
  • Identifice exemple de algoritmi din viața de zi cu zi și să recunoască modele eficiente. 
  • Reprezinte valorile și operațiile în pseudocod. 
  • Utilizeze structurile de control conditionale și să lucreze cu valori de adevăr. 
  • Implementeze instrucțiuni repetitive cu număr necunoscut de pași și să gestioneze colecții de date.
  • Aplice algoritmi simpli de prelucrare a colecțiilor și de căutare liniară.
  • Manipuleze siruri de caractere și să folosească instrucțiuni repetitive cu număr cunoscut de pași. 
  • Efectueze căutarea și prelucrarea eficientă a sirurilor de caractere. 
  • Gestionaze eficient resursele de memorie și să adopte practici bune pentru memory usage. 
  • Implementeze algoritmi de sortare eficienți și să înțeleagă diferite metode de sortare.
  • Calculeze complexitatea algoritmilor, inclusiv numărul de operații și complexitatea spațială.
  • Abordeze algoritmi avansați, precum căutarea binară și logaritmul, și să rezolve probleme de numărare. 
  • Lucreze cu structuri de date liniare, cum ar fi stack-ul, queue-ul și priority queue-ul. 
  • Exploreze structuri de date ierarhice, cum ar fi arborii și arborii binari de căutare și să le parcurgă în moduri eficiente. 
  • Gestionaze cheile și valorile utilizând hash tables și să înțeleagă importanța lor în stocarea eficientă a datelor. 

Cerințe preliminare:

Este recomandată parcurgerea programului în paralel cu învățarea unui limbaj de programare, la alegere, pentru a exersa sintaxa acestuia în etapa de implementare a algoritmilor.

Agenda cursului:

Agenda cursului:

Lectia 1 – Definirea si etapele unui algoritm. Structuri conditionale
– Ce este un algoritm. Exemple de algoritmi din viata de zi cu zi
– Cele 5 etape ale construirii unui algoritm
– Pseudocodul
– Reprezentarea valorilor si operatiilor in pseudocod
– Structuri de control conditionale. Valori de adevar 

Lectia 2 – Operatii repetitive. Colectii de date
– Instructiuni repetitive cu numar necunoscut de pasi
– Colectii de date
– Algoritmi simpli de prelucrare a colectiilor
– Algoritmi simpli de cautare liniari 

Lectia 3 – Siruri de caractere. Memory usage
– Siruri de caractere
– Instructiuni repetitive cu numar cunoscut de pasi
– Algoritmi simpli de cautare in sirurile de caractere
– Algoritmi de prelucrare a sirurilor de caractere
– Memory usage 

Lectia 4 – Algoritmi simpli de sortare. Colectii multidimensionale
– Niveluri multiple de iteratii. Sortarea prin selectie
– Colectii multidimensionale 

Lectia 5 – Complexitatea algoritmilor
– Determinarea numarului de operații efectuate de un algoritm
– Cautarea binara
– Logaritm
– Complexitatea spatiala a algoritmilor
– Probleme de numarare 

Lectia 6 – Modalitati de sortare eficiente
– Counting sort
– Merge sort
– Quick sort 

Lecția 7 – Indexare si cautare
– Identificarea datelor pe baza unei chei (dictionar)
– Alegerea cheilor unui dictionar
– Hash tables 

Lectia 8 – Structuri de date liniare
– Stack
– Reprogramivitate
– Queue
– Priority queue 

Lectia 9 – Structuri de date ierarhice
– Reprezentarea arborilor
– Parcugerea in adancime
– Parcugerea in latime
– Arbori binari de cautare 

Lectia 10 – Algoritmi intalniti la interviuri
– Palindrom
– Eliminarea duplicatelor dintr-un array
– Cautarea perechii unui numar intr-un set dat
– Paranteze inchise corect 

Recomandăm să continui cu:

Programe de certificare

Participanții vor primi diplomă de absolvire după completarea cursului și susținerea examenului de evaluare .

Academia de Reconversie Algorithmic Thinking

Durată

40
ore

Număr de lecții

10

Preț

350 EUR

Tip curs

online, în ritm propriu

Nivel de specializare

Entry

Roluri asociate

Developer

        Solicită ofertă personalizată pentru 2 sau mai multe persoane.