|

Algoritmi Elementari – Testarea unui Număr Prim 11

1. Obiectivele lecției: 2. Conținutul lecției: Ce este un număr prim? 3. Algoritmul general: Principiul de bază: Pseudocod pentru testarea unui număr prim: Intrare: n Dacă n < 2, atunci     Nu este prim Pentru i de la 2 la √n:     Dacă n % i == 0, atunci         Nu este prim Este prim…

|

Algoritmi Elementari – Generarea Șirurilor Recurente 12

1. Obiectivele lecției: 2. Conținutul lecției: Ce este un șir recurent? 3. Exemple de șiruri recurente și algoritmi: Exemplu 1: Generarea șirului Fibonacci #include <iostream> using namespace std; int main() {     int n;     cout << „Introdu numarul de termeni din sirul Fibonacci: „;     cin >> n;     int f0 = 0, f1…

|

Algoritmi de Sortare – Sortarea prin Metoda Bulelor 13

1. Obiectivele lecției: 2. Conținutul lecției: Ce este sortarea prin metoda bulelor? Pasii metodei: Pseudocod: Intrare: Lista de n elemente Pentru i de la 0 la n-1:     Pentru j de la 0 la n-i-2:         Dacă lista[j] > lista[j+1], atunci             Interschimbă lista[j] cu lista[j+1] Ieșire: Lista sortată 3. Cod în C++: #include <iostream>…

|

Algoritmi de Sortare – Sortarea prin Inserție 14

1. Obiectivele lecției: 2. Conținutul lecției: Ce este sortarea prin inserție? Cum funcționează? Pseudocod: Intrare: Lista de n elemente Pentru i de la 1 la n-1:     Elementul curent = lista[i]     j = i – 1     Cât timp j >= 0 și lista[j] > Elementul curent:         lista[j + 1] = lista[j]        …

|

Algoritmi de Sortare – Sortarea prin Selecția Minimului 15

1. Obiectivele lecției: 2. Conținutul lecției: Ce este sortarea prin selecția minimului? Cum funcționează? Pseudocod: Intrare: Lista de n elemente Pentru i de la 0 la n-1:     minIndex = i     Pentru j de la i+1 la n-1:         Dacă lista[j] < lista[minIndex], atunci             minIndex = j     Interschimbă lista[i] cu lista[minIndex] Ieșire:…

|

Algoritmi de Sortare – Sortarea prin Numărare (Counting Sort) 16

1. Obiectivele lecției: 2. Conținutul lecției: Ce este sortarea prin numărare? Cum funcționează? Pseudocod: Intrare: Lista de n elemente, valoare_maximă Creează un tablou count de dimensiune valoare_maximă + 1 Initializează count[i] = 0 pentru toate valorile i Pentru fiecare element x din lista:     Increment count[x] Reconstruiește lista sortată:     Pentru i de la 0…

|

Algoritmul de Interclasare (Merge Sort) 17

1. Obiectivele lecției: 2. Conținutul lecției: Ce este interclasarea? Algoritmul Merge Sort: Pseudocod pentru Merge Sort: Funcție mergeSort(lista):     Dacă dimensiunea listei <= 1:         Returnează lista     Împarte lista în două subliste: stânga și dreapta     stânga_sortată = mergeSort(stânga)     dreapta_sortată = mergeSort(dreapta)     Returnează merge(stânga_sortată, dreapta_sortată) Funcție merge(stânga, dreapta):     Creează o listă…

|

Algoritmi de Căutare – Căutarea Secvențială 18

1. Obiectivele lecției: 2. Conținutul lecției: Ce este căutarea secvențială? Cum funcționează? Pseudocod: Intrare: vector, dimensiune, valoare_cautata Pentru i de la 0 la dimensiune – 1:     Dacă vector[i] == valoare_cautata:         Returnează i Returnează -1 (valoarea nu a fost găsită) 3. Cod în C++: Exemplu de bază: #include <iostream> using namespace std; int cautareSecventiala(int…

|

Algoritmi de Căutare – Căutarea Binara 19

1. Obiectivele lecției: 2. Conținutul lecției: Ce este căutarea binară? Cum funcționează? Pseudocod: Intrare: vector sortat, dimensiune, valoare_cautata Inițializează left = 0, right = dimensiune – 1 Cât timp left <= right:     Calculează mid = (left + right) / 2     Dacă vector[mid] == valoare_cautata:         Returnează mid     Dacă vector[mid] < valoare_cautata:        …

|

Analiza Complexității unui Algoritm 20

1. Obiectivele lecției: 2. Conținutul lecției: Ce este complexitatea unui algoritm? Tipuri de complexitate: Notări comune: 3. Analiza complexității temporale: Pasul 1: Identificarea operațiilor critice Operațiile critice sunt cele care determină timpul total de execuție al algoritmului, cum ar fi comparațiile, atribuțiile sau iterațiile. Pasul 2: Determinarea numărului de operații în funcție de intrare Complexități…