Algoritmi și Programare ID

Curs
9.3/10 (6 voturi)
Conține 1 fișier: pdf
Pagini : 91 în total
Cuvinte : 32350
Mărime: 480.05KB (arhivat)
Publicat de: Alex Adam
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Dorel Lucanu

Cuprins

  1. Cuprins
  2. 1 Introducere 1
  3. 2 Despre algoritmi 2
  4. 2.1 Limbaj algoritmic 2
  5. 2.2 Probleme si programe 15
  6. 2.3 Masurarea performantelor unui algoritm 17
  7. 3 Tipuri de date de nivel ^nalt 23
  8. 3.1 Lista liniara 23
  9. 3.2 Lista liniara ordonata 31
  10. 3.3 Stiva 35
  11. 3.4 Coada 38
  12. 3.5 Arbori binari 42
  13. 3.6 Grafuri 50
  14. 3.7 Heap"-uri 64
  15. 3.8 Union- nd" 68
  16. 4 Sortare interna 71
  17. 4.1 Sortare bazata pe comparatii 71
  18. 5 Cautare 80
  19. 5.1 Cautare ^n liste liniare 81
  20. 5.2 Arbori binari de cautare 81
  21. 6 Enumerare 86
  22. 6.1 Enumerarea permutarilor 86
  23. 6.2 Enumerarea elementelor produsului cartezian 89
  24. Bibliogra e 90

Extras din curs

Capitolul 1

Introducere

Acest manual este dedicat ^n special studentilor de la formele de ^nvatam^ant ID (^Invatam^ant la Distanta)

si PU (Post universitare) de la Facultatea de Informatica a Universitatii "Alexandru Ioan Cuza" din Iasi.

Cartea se doreste a un suport pentru disciplinele Algoritmi si Programare (ID) si Structuri de Date si

Algoritmi (PU). Recomandam ca parcurgerea acestui suport sa se faca ^n paralel cu consultarea materialul

electronic a

at pe pagina web a cursului la adresa http://www.infoiasi.ro/fcs/CS2101.php. De fapt

continutul acestei carti este o versiune simpli cata a celui inclus pe pagina cursului. Din acest motiv

unele referinte apar ca nede nite (marcate cu ??"). Toate acestea pot gasite pe pagina cursului.

Structura manualului este urmatoarea: Capitolul doi include de nitia limbajului algoritmic utilizat

^mpreuna cu de nitiile pentru cele doua functii principale de masurare a e cientei algoritmilor: complex-

itatea timp si complexitatea spatiu. Tipurile de date cele mai utilizate ^n programare sunt prezentate

^n capitolul trei. ^In capitolul patru sunt prezentati principalii algoritmi de sortare interna bazati pe

comparatii. Capitolul al cincilea este dedicat algoritmilor de cautare si a principalelor structuri de date

utilizate de acesti algoritmi. Capitolul sase include doi algoritmi de enumerare: enumerarea permutarilor

si enumerarea elementelor produsului cartezian. Fiecare capitol este acopaniat de o lista de exercitii.

Capitolul 2

Despre algoritmi

2.1 Limbaj algoritmic

2.1.1 Introducere

Un algoritm este o secventa nita de pasi, aranjata ^ntr-o ordine logica speci ca care, atunci c^and este

executata, produce o solutie corecta pentru o problema precizata. Algoritmii pot descrisi ^n orice limbaj,

pornind de la limbajul natural p^na la limbajul de asamblare al unui calculator speci c. Un limbaj al

carui scop unic este cel de a descrie algoritmi se numeste limbaj algoritmic. Limbajele de programare

sunt exemple de limbaje algoritmice.

^In aceasta sectiune descriem limbajul algoritmic utilizat ^n aceasta carte. Limbajul nostru este tipizat,

^n sensul ca datele sunt organizate ^n tipuri de date. Un tip de date consta dintr-o multime de entitati de

tip data (valori), numita si domeniul tipului, si o multime de operatii peste aceste entitati. Convenim

sa grupam tipurile de date ^n trei categorii:

- tipuri de date elementare, ^n care valorile sunt entitati de informatie indivizibile;

- tipuri de date structurate de nivel jos, ^n care valorile sunt structuri relativ simple obtinute prin

asamblarea de valori elementare sau valori structurate iar operatiile sunt date la nivel de compo-

nenta;

- tipuri de date structurate de nivel ^nalt, ^n care valorile sunt structuri mai complexe iar operatiile

sunt implementate de algoritmi proiectati de catre utilizatori.

Primele doua categorii sunt dependente de limbaj si de aceea descrierile lor sunt incluse ^n aceata sectiune.

Tipurile de nivel ^nalt pot descrise ^ntr-o maniera independenta de limbaj si descrierile lor sunt incluse

^n capitolul 3. Un tip de date descris ^ntr-o maniera indepenedenta de reprezentarea valorilor si imple-

mentarea operatiilor se numeste tip de date abstract.

Pasii unui algoritm si ordinea logica a acestora sunt descrise cu ajutorul instructiunilor. O secventa

de instructiuni care actioneaza asupra unor structuri de date precizate se numeste program. ^In sectiunea

2.2 vom vedea care sunt conditiile pe care trebuie sa le ^ndeplineasca un program pentru a descrie un

algoritm.

2.1.2 Modelarea memoriei

Memoria este reprezentata ca o structura liniara de celule, ecare celula av^and asociata o adresa si

put^and memora (stoca) o data de un anumit tip ( g. 2.1). Accesul la memorie este realizat cu ajutorul

variabilelor. O variabila este caracterizata de:

Preview document

Algoritmi și Programare ID - Pagina 1
Algoritmi și Programare ID - Pagina 2
Algoritmi și Programare ID - Pagina 3
Algoritmi și Programare ID - Pagina 4
Algoritmi și Programare ID - Pagina 5
Algoritmi și Programare ID - Pagina 6
Algoritmi și Programare ID - Pagina 7
Algoritmi și Programare ID - Pagina 8
Algoritmi și Programare ID - Pagina 9
Algoritmi și Programare ID - Pagina 10
Algoritmi și Programare ID - Pagina 11
Algoritmi și Programare ID - Pagina 12
Algoritmi și Programare ID - Pagina 13
Algoritmi și Programare ID - Pagina 14
Algoritmi și Programare ID - Pagina 15
Algoritmi și Programare ID - Pagina 16
Algoritmi și Programare ID - Pagina 17
Algoritmi și Programare ID - Pagina 18
Algoritmi și Programare ID - Pagina 19
Algoritmi și Programare ID - Pagina 20
Algoritmi și Programare ID - Pagina 21
Algoritmi și Programare ID - Pagina 22
Algoritmi și Programare ID - Pagina 23
Algoritmi și Programare ID - Pagina 24
Algoritmi și Programare ID - Pagina 25
Algoritmi și Programare ID - Pagina 26
Algoritmi și Programare ID - Pagina 27
Algoritmi și Programare ID - Pagina 28
Algoritmi și Programare ID - Pagina 29
Algoritmi și Programare ID - Pagina 30
Algoritmi și Programare ID - Pagina 31
Algoritmi și Programare ID - Pagina 32
Algoritmi și Programare ID - Pagina 33
Algoritmi și Programare ID - Pagina 34
Algoritmi și Programare ID - Pagina 35
Algoritmi și Programare ID - Pagina 36
Algoritmi și Programare ID - Pagina 37
Algoritmi și Programare ID - Pagina 38
Algoritmi și Programare ID - Pagina 39
Algoritmi și Programare ID - Pagina 40
Algoritmi și Programare ID - Pagina 41
Algoritmi și Programare ID - Pagina 42
Algoritmi și Programare ID - Pagina 43
Algoritmi și Programare ID - Pagina 44
Algoritmi și Programare ID - Pagina 45
Algoritmi și Programare ID - Pagina 46
Algoritmi și Programare ID - Pagina 47
Algoritmi și Programare ID - Pagina 48
Algoritmi și Programare ID - Pagina 49
Algoritmi și Programare ID - Pagina 50
Algoritmi și Programare ID - Pagina 51
Algoritmi și Programare ID - Pagina 52
Algoritmi și Programare ID - Pagina 53
Algoritmi și Programare ID - Pagina 54
Algoritmi și Programare ID - Pagina 55
Algoritmi și Programare ID - Pagina 56
Algoritmi și Programare ID - Pagina 57
Algoritmi și Programare ID - Pagina 58
Algoritmi și Programare ID - Pagina 59
Algoritmi și Programare ID - Pagina 60
Algoritmi și Programare ID - Pagina 61
Algoritmi și Programare ID - Pagina 62
Algoritmi și Programare ID - Pagina 63
Algoritmi și Programare ID - Pagina 64
Algoritmi și Programare ID - Pagina 65
Algoritmi și Programare ID - Pagina 66
Algoritmi și Programare ID - Pagina 67
Algoritmi și Programare ID - Pagina 68
Algoritmi și Programare ID - Pagina 69
Algoritmi și Programare ID - Pagina 70
Algoritmi și Programare ID - Pagina 71
Algoritmi și Programare ID - Pagina 72
Algoritmi și Programare ID - Pagina 73
Algoritmi și Programare ID - Pagina 74
Algoritmi și Programare ID - Pagina 75
Algoritmi și Programare ID - Pagina 76
Algoritmi și Programare ID - Pagina 77
Algoritmi și Programare ID - Pagina 78
Algoritmi și Programare ID - Pagina 79
Algoritmi și Programare ID - Pagina 80
Algoritmi și Programare ID - Pagina 81
Algoritmi și Programare ID - Pagina 82
Algoritmi și Programare ID - Pagina 83
Algoritmi și Programare ID - Pagina 84
Algoritmi și Programare ID - Pagina 85
Algoritmi și Programare ID - Pagina 86
Algoritmi și Programare ID - Pagina 87
Algoritmi și Programare ID - Pagina 88
Algoritmi și Programare ID - Pagina 89
Algoritmi și Programare ID - Pagina 90
Algoritmi și Programare ID - Pagina 91

Conținut arhivă zip

  • Algoritmi si Programare ID.pdf

Alții au mai descărcat și

Abstract Factory - Factory Method

Definitie Ofera o interfata pentru crearea unor familii de obiecte inrudite sau dependente intre ele, fara a specifica clasa lor concreta. Se mai...

Sistemele expert - inteligență artificială

Sistemele expert sunt produse ale inteligentei artificiale, ramura a stiintei calculatoarelor ce urmareste dezvoltarea de programe inteligente....

Roboți Industriali

1. NOTIUNI GENERALE PRIVIND ROBOTII INDUSTRIALI 1.1. Definitii si notiuni uzuale utilizate Cuvântul `robot` a fost folosit pentru prima datã în...

Inteligență artificială - capitolul 1-strategii de căutare

Strategia de cautare pe nivel în spatiul starilor Strategia de cautare pe nivel (în latime, breadth-first search) este o strategie de cautare...

Inteligență artificială

Inteligenta artificiala 1 Concepte de baza Când s-a vorbit prima data de Inteligenta Artificiala (AI  Artificial Intelligence) în 1956, totul...

Sisteme Expert - Curs 2

Definitie: Un sistem expert este un program ce utilizeaza cunoasterea si procedurile de inferenta (deductie logica) pentru rezolvarea problemelor...

Învățarea automată

Invatare automata. Agenti care invata. Clasificarea metodelor şi tehnicilor Dupa modul de fundamentare empirică: -metode şi tehnici de calcul...

Sisteme Multimedia Distribuite

5.1 Arhitecturi ale sistemelor multimedia distribuite Cele mai folosite arhitecturi pentru sistemele multimedia distribuite sunt: arhitectura...

Te-ar putea interesa și

Ilustrarea și simularea unor algoritmi legați de inteligența artificială folosind programarea orientată pe obiect în limbajul java

Introducere Am ales lucrarea intitulată „Ilustrarea și simularea unor algoritmi de inteligență artificială folosind programarea orientată pe...

Algoritmi de Calcul

Capitolul I Sistem Informaţional – Sistem Informatic I.1. Sistemul Informaţional. Un sistem poate fi privit ca un ansamblu de elemente...

Proiectarea unui sistem de acționare cu motor de curent continuu

INTRODUCERE SISTEME DE ACȚIONARE ELECTRICĂ. GENERALITĂȚI Un sistem de acționare electrică reprezintă o mulțime de obiecte interconectate și...

Introducere în cercetări operaționale

Cap 1. Introducere in Cercetari Operationale: In cadrul problemelor de programare matematica, un interes aparte li se acorda acelora care sunt...

Proiect algoritmi în programare - gestiune firmă impresariat

„Alex&Asociații .co” este o firmă de impresariat cu tradiție în România și cu extindere rapidă în exterior, care dorește să gestioneze date despre...

Algoritmi și Structuri de Date

Introducere: Semiotica se ocupã cu studiul semnelor în natura si în societate. Semnul nu este o calitate în sine a unui obiect, ci o functie pe...

Scheme logice

INTRODUCERE De la apariţia ei şi pînă astăzi informatica aparţinea în mare parte persoanelor cu înclinaţii spre științe exacte. Aceasta deoarece...

Algoritmi în Programare

I.PREZENTAREA TEMEI Aplicaţia realizată este folosită pentru gestiunea stocurilor de medicamente dintr-- farmacie. Prelucrările aplicaţiei...

Ai nevoie de altceva?