ALGORITMI * * * ALGORITMI * * * ALGORITMI * * * ALGORITMI * * * ALGORITMI * * * ALGORITMI

Recursivitate

Recursivitate

Recursivitate Recursivitatea este un procedeu foarte important în programare. Spunem despre o funcţie că este recursivă, daca ea se autoapelează. Cel mai important aspect al recursivităţii constă în adăugarea în funcţia respectivă a unei condiţii de oprire a funcţiei, altfel funcţia se va rechema până cănd zona sa de stivă nu va mai putea susţine un alt apel de funcţie. Cu alte cuvinte, se va ajunge la situaţia de Stack Overflow. Este deci necesară o condiţie de oprire, care va face să se iasă din funcţie, atunci cand s-a ajuns la un anumit caz particular.
Funcţiile recursive trebuie să îndeplinească condiţia de consistenţă, care presupune că prelucrarea parametrilor locali ai funcţiei conduce către valoarea de bază, de la care se pleacă în construirea soluţiei Recursivitate

Backtracking

Current show

Backtracking Este o tehnică de programare aplicabilă algoritmilor care oferă mai multe soluții și are ca rezultat obținerea tuturor soluțiilor problemei. Fiecare soluție se memorează într-o structură de date de tip stivă. Se completează stiva nivel cu nivel, trecând astfel prin soluții parțiale. Pentru a fi luate în considerare, atât soluțiile finale, cât și cele parțiale, trebuie să îndeplinească anumite condiții, numite condiții de validare. Toate configurațiile stivei ce reprezintă soluții finale sunt alcătuite din elementele aceleiași mulțimi - mulțimea soluțiilor. Fiecare nouă soluție parțială se obține prin completarea soluției parțiale precedente cu încă o nivel pe stivă. La fiecare nivel se pun valori din mulțimea soluțiilor care nu au fost încercate, până când se obține o soluție validă, după care se trece la nivelul următor în stivă, reluând încercările pe noul nivel. Daca pe un anumit nivel nu mai există nici o valoare neîncercată, se face un pas înapoi în stivă, la nivelul anterior, și se reia căutarea cu valorile rămase neîncercate pe acest nivel. Backtracking

Programare dinamica

Current show

Programare dinamica Programarea dinamică rezolvă problemele prin descompunerea lor în subprobleme şi prin combinarea rezolvărilor acestora. Se aplică atunci când subproblemele nu sunt independente. Se salvează rezultatul fiecărei subprobleme într-o tabelă, evitând astfel rezolvarea redundantă a aceleiaşi probleme. Programarea dinamică se aplică în general problemelor de optimizare, atunci când dorim să determinăm rapid soluţia optimă pentru o problemă. De fapt, aplicând această tehnică determinăm una din soluţiile optime, problema putând avea mai multe soluţii optime. Programare dinamica

Portal eLearning

Grafica

in slujba studiului Algoritmilor si a Structurilor de date

 

Prin Portalul eLearning, am vrut sa creez o modalitate facilă de acces la studiul și înțelegerea Algoritmilor și Structurilor de Date, folosind vizualizarea grafică a problemelor și  rezolvărilor acestora din dorința de a creea un mediu online prietenos, care să permită rezolvarea și analiza în timp real a rezultatelor, plecând de la dictonul că “o imagine face cât o mie de cuvinte”. Am vrut să creez o platformă accesibilă, atât celor interesați să învețe cât și celor care vor să contribuie la găsirea unor modalităţi diferite de rezolvare a unor probleme familiare celor din lumea programării și matematicii.
Platforma este un mediu deschis, unde se găsesc cursuri teoretice, rezolvari diverse ale acestor probleme, unde se vor putea adăuga în permanență noi informații și unde, în viitor, vor putea avea loc dezbateri în cadrul unui forum.

Prin Portalul eLearning, am vrut sa creez o modalitate facilă de acces la studiul și înțelegerea Algoritmilor și Structurilor de Date, folosind vizualizarea grafică a problemelor și  rezolvărilor acestora din dorința de a creea un mediu online prietenos, care să permită rezolvarea și analiza în timp real a rezultatelor, plecând de la dictonul că “o imagine face cât o mie de cuvinte”. Am vrut să creez o platformă accesibilă, atât celor interesați să învețe cât și celor care vor să contribuie la găsirea unor modalităţi diferite de rezolvare a unor probleme familiare celor din lumea programării și matematicii.
Platforma este un mediu deschis, unde se găsesc cursuri teoretice, rezolvari diverse ale acestor probleme, unde se vor putea adăuga în permanență noi informații și unde, în viitor, vor putea avea loc dezbateri în cadrul unui forum.

Tineti legatura cu noi

Aflati mai multe