InfoBook.ro ← Harta anului
Modul 13 · Paradigme & Recapitulare finală
Modul 13 · Conținut 3.2 + Finalul clasei a XI-a

Trei feluri de a gândi, un an întreg

Backtracking, grafuri, arbori, obiecte — le-ai văzut pe toate. Ultimul pas: privirea de sus. Cum se ÎMPART limbajele și stilurile de programare — și tot anul, condensat într-un test și o fișă.

1

Paradigmele — aceeași problemă, trei gândiri

„Dublează numerele pare dintr-o listă" — rezolvată în trei stiluri. Toate corecte; diferă UNDE stă accentul.

Procedurală

Pași expliciți: CE se face, în ce ordine. C, Pascal — și C++-ul tău de BAC.

1rez = []
2for x in v:
3 if x % 2 == 0:
4 rez.append(2 * x)

Obiectuală

CINE face: date + acțiuni împreună (M12). Java, C#, Python cu clase.

1class Lista:
2 def dubleaza_pare(self):
3 # obiectul se
4 # prelucrează singur

Declarativă

Descrii REZULTATUL, nu pașii. SQL, HTML — și list comprehension!

1rez = [2 * x for x in v
2 if x % 2 == 0]
3# „vreau dublul paritor"
4# — cum, treaba limbajului

Alte limbaje — harta rapidă din programă

LimbajCaracterUnde strălucește
Cprocedural, compilat, foarte aproape de hardwaresisteme de operare, microcontrolere
C++procedural + obiectual, compilat, rapidjocuri, aplicații de performanță — și BAC-ul tău!
Java / C#obiectuale „prin construcție", rulare pe mașină virtualăaplicații enterprise, Android / ecosistem Microsoft
JavaScriptmulti-paradigmă, interpretat, în browsertot web-ul interactiv — inclusiv lecțiile acestea!
Pythonmulti-paradigmă, interpretat, sintaxă blândăștiința datelor, AI, automatizare, școală
Concluzia programei: limbajul e o unealtă, paradigma e gândirea. Cine stăpânește modelele (liste, grafuri, arbori, obiecte) și strategiile (Backtracking, Greedy, Divide et impera) se mută dintr-un limbaj în altul în câteva zile.
2

Traseul anului — 14 stații

Auriu = explorare · albastru = grafuri · verde = arbori · portocaliu = obiecte. Fiecare stație duce la modulul ei.

3

Marele test — 12 întrebări, câte una pe modul

Eticheta îți spune unde te întorci dacă greșești.

4

Fișa fișelor — 12 idei de aur

Câte o propoziție din fiecare modul. Dacă le știi pe toate, anul e al tău.

M01Backtracking — schema

Cele 4 întrebări: soluția, elementul, validarea, completitudinea; revenirea e automată când candidații se termină.

M02Clasicele

Regine: |x[i]−x[k]| ≠ k−i · valori parțiale taie devreme · optim: cost ≥ minim → return.

M03Grafuri neorientate

Σd(x) = 2m; matricea simetrică; lanț elementar = noduri unice; max n(n−1)/2 muchii.

M04Grafuri orientate

d⁺ = linia, d⁻ = coloana; subgraf taie noduri, graful parțial taie doar arce.

M05BFS & DFS

Coada dă valuri și distanțe minime; stiva dă tuneluri și componente; ambele O(n+m).

M06Roy-Floyd

k (escala) e bucla EXTERIOARĂ; d[i][i]=1 ⇔ circuit; eulerian = grade pare, hamiltonian = nodurile.

M07Dijkstra

Fixează minimul, relaxează cu d[u]+c[u][v]; corect doar cu costuri ≥ 0; tata[] reconstruiește.

M08Prim

APM cu n−1 muchii; actualizarea FĂRĂ d[u]+; drumurile minime ≠ rețeaua minimă.

M09Arbori

Conex + fără cicluri = n−1 muchii = un singur lanț între oricare două; t[rădăcină] = 0.

M10Arbori binari

Pre: rădăcina prima · post: ultima · reconstrucția: rădăcina din pre taie inordinea.

M11ABC

Stânga < nod < dreapta peste tot; inordinea = sortat; O(înălțime) — liana e dușmanul.

M12POO

__init__ + self; date private + metode cu validare; Derivată(Bază) + super(); polimorfism.

5

Mai departe

Cum transformi anul acesta în notă la BAC — și ce urmează.

Pentru BAC (C++): subiectul III trăiește din materia acestui an — funcții recursive de urmărit, grafuri (grade, matrice, conexitate), arbori (parcurgeri, reconstrucții), Backtracking („a câta soluție…?"). Reia variantele oficiale de pe subiecte.edu.ro cu fișa fișelor alături, și pbinfo pe categoriile fiecărui modul.
În clasa a XII-a: modelele avansate — baze de date și SQL, programare dinamică (răzbunarea monedelor 1/3/4!), și învățarea automată în Python. Totul construit exact pe ce ai acum: date organizate + strategii + obiecte. Drum bun! 🚀
← anteriorModul 12 · POO în Python înapoi laHarta anului · Introducere