Algoritmi. Tehnici si Limbaje de Programare



Yüklə 1,07 Mb.
səhifə1/13
tarix03.01.2018
ölçüsü1,07 Mb.
#36896
  1   2   3   4   5   6   7   8   9   ...   13


VALERIU LUPU

ALGORITMI. TEHNICI ŞI

LIMBAJE DE PROGRAMARE


EDITURA UNIVERSITĂŢII “ŞTEFAN cel MARE” SUCEAVA

2007

Prefaţă

Cartea isi propune in primul rand sa fie un curs si nu o "enciclopedie" de algoritmi. Pornind de la structurile de date cele mai uzuale si de la analiza eficientei algoritmilor, cartea se concentreaza pe principiile fundamentale de elaborare a algoritmilor: greedy, divide et impera, programare dinamica, backtracking. Majoritatea algoritmilor selectati au o conotatie estetica. Efortul necesar pentru intelegerea elementelor mai subtile este uneori considerabil. Ce este insa un algoritm "estetic"? Putem raspunde foarte simplu: un algoritm este estetic daca exprima mult in cuvinte putine. Un algoritm estetic este oare in mod necesar si eficient? Cartea raspunde si acestor intrebari.

In al doilea rand, cartea prezinta mecanismele interne esentiale ale limbajului Visual Basic si trateaza implementarea algoritmilor in mod iterative cat si recursiv. Totusi, aceasta carte nu este un curs complet de Visual Basic. Algoritmii nu sunt pur si simplu "transcrisi" din pseudo-cod in limbajul Visual Basic, ci sunt reganditi din punct de vedere al programarii orientate pe obiect. Speram ca, dupa citirea cartii, veti dezvolta aplicatii de programare in mod iterative cat si recursiv si veti elabora implementari ale altor structuri de date. Programele pot fi scrise si in limbajul C#. Acest limbaj se caracterizeaza, in principal, prin introducerea claselor parametrice si a unui mecanism de tratare a exceptiilor foarte avansat, facilitati deosebit de importante pentru dezvoltarea de biblioteci C#.

Fara a face concesii rigorii matematice, prezentarea este intuitiva, cu numeroase exemple. Am evitat, pe cat posibil, situatia in care o carte de informatica incepe - spre disperarea ne-matematicienilor - cu celebrul "Fie ... ", sau cu o definitie. Am incercat, pe de alta parte, sa evitam situatia cand totul "este evident", sau "se poate demonstra". Fiecare capitol este conceput fluid, ca o mica poveste, cu putine referinte si note. Multe rezultate mai tehnice sunt obtinute ca exercitii. Algoritmii sunt prezentati intr-un limbaj pseudo-cod compact, fara detalii inutile.

Presupunem ca cititorul nu are la baza cel putin un curs introductiv in programare, fiindu-i straini termeni precum algoritm, recursivitate, functie, procedura si pseudo-cod. Exista mai multe modalitati de parcurgere a cartii. In functie de interesul si pregatirea cititorului, acesta poate alege oricare din partile referitoare la elaborarea, analiza, sau implementarea algoritmilor. Cu exceptia partilor de analiza a eficientei algoritmilor (unde sunt necesare elemente de matematici superioare), cartea poate fi parcursa si de catre un elev de liceu. Pentru parcurgerea sectiunilor de implementare, este recomandabila cunoasterea limbajului Visual Basic.

S-a dovedit utila si experienta autorului de peste douzeci de ani in dezvoltarea produselor software. Le multumesc pentru aprecieri pro/contra asupra lucrării membrilor catedrei de informatică de la Facultatea de Ştiinţe Economice şi Administraţie Publică.


Autorul,

Conf. univ. dr. Lupu Valeriu

Universitatea “Ştefan cel Mare” Suceava

Facultatea de Ştiinţe Economice şi Administraţie Publică



Catedra de Informatică

Cuprins


Capitolul I

Descrierea algoritmilor ..................................................................................

...............6

Capitolul II

Subprograme .................................................................................................

.............16

Capitolul III

Metode de proiectare a algoritmilor ..............................................................

.............23

Capitolul IV

Analiza algoritmilor ......................................................................................

.............27

Capitolul V

Clase de algoritmi ...........................................................................................

.............34

Capitolul VI

Evoluţia limbajelor de programare ................................................................

.............41

Capitolul VII

Limbajul Visual Basic ...................................................................................

.............55

Capitolul VIII

Reguli privind alegerea unui limbaj de programare ......................................

.............69

Capitolul IX

Metoda backtracking .....................................................................................

.............73

Capitolul X

Metoda Divide et impera ...............................................................................

.............91

Capitolul XI

Metoda Greedy ..............................................................................................

.............95

Capitolul XII

Studii de caz – Aplicaţii ................................................................................

...........109

Bibliografie

.........................................................................................................................

...........135


CAPITOLUL I

Yüklə 1,07 Mb.

Dostları ilə paylaş:
  1   2   3   4   5   6   7   8   9   ...   13




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin