Algoritmi

Curs
8.5/10 (2 voturi)
Domeniu: Calculatoare
Conține 2 fișiere: doc
Pagini : 9 în total
Cuvinte : 1998
Mărime: 161.44KB (arhivat)
Publicat de: Demetra Szasz
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Borza Ioan

Extras din curs

ETAPELE REZOLVARII UNEI PROBLEME

ALGORITMUL – reprezintă o succesiune finită şi ordonată de operaţii univoc determinate, efectuate mecanic, care aplicate datelor iniţiale ale unei probleme dintr-o clasă dată, asigură obţinerea soluţiei acelei probleme. Cu alte cuvinte un algoritm este orice procedură de calcul bine definită care primeşte o anumită valoare sau o mulţime de valori ca date de intrare şi produce o anumită valoare sau mulţime de valori ca date de ieşire. Comportarea unui algoritm poate fi diferită în funcţie de datele de intrare.

Etimologia noţiunii de algoritm – provine din latinizarea numelui savantului Al-Khwarizmi (Algoritmi) – matematician, geograf, astronom persan (780-845), considerat şi părintele algebrei.

PROPRIETĂŢILE ALGORITMILOR sunt:

- Claritatea – operaţiile algoritmului şi succesiunea executării lor trebuie să fie descrise clar, precis, fără ambiguităţi, astfel încât să permită o executare mecanică, automată a acţiunilor algoritmului

- Generalitatea – un algoritm permite, nu rezolvarea unei singure probleme particulare, ci a unei întregi clase de probleme.

- Finitudinea – executarea algoritmului trebuie să cuprindă un număr finit de operaţii, chiar dacă numărul lor este foarte mare. Această proprietate diferenţiază metoda de calcul de algoritm.

- Eficienţa – dintre algoritmii care rezolvă o anumită problemă, prezintă interes numai algoritmii performanţi pentru care numărul operaţiilor care se execută este cel mai mic.

Provocari:

o La momentul actual sunt realizate cercetări serioase asupra algoritmilor care vizează nu numai o îmbunătăţire a performanţei ci şi o reducere a puterii consumate, vitală mai ales la nivelul dispozitivelor de calcul de tip “handheld” şi al sistemelor dedicate.

o Într-o era a sistemelor multicore (mai multe procesoare pe acelasi cip) s-ar putea ca algoritmii populari de programare, din era secvenţiala să scadă în popularitate. => Necesitatea scrierii algoritmilor in vederea paralelizarii executiei (fire de executie din cadrul aceluiasi program care sa opereze in paralel). Algoritmii de tip divide et impera pot fi paralelizati mai uşor. Exemplu: Quicksort – după partiţionare cele două liste obţinute pot fi uşor sortate în paralel. Avantajul consta in faptul că nu e nevoie de sincronizări (cu excepţia celei finale, când firele se reunesc). Un nou fir poate fi pornit imediat ce avem la dispoziţie o sublistă de sortat şi acesta nu are nevoie să comunice cu celelalte fire. Când toate firele au terminat, sortarea este completă.

Preview document

Algoritmi - Pagina 1
Algoritmi - Pagina 2
Algoritmi - Pagina 3
Algoritmi - Pagina 4
Algoritmi - Pagina 5
Algoritmi - Pagina 6
Algoritmi - Pagina 7
Algoritmi - Pagina 8
Algoritmi - Pagina 9

Conținut arhivă zip

  • Algoritm_intro_1.doc
  • Algoritm_sel_2.doc

Alții au mai descărcat și

Algoritmi Paraleli

Prezentarea proiectului Problema filozofilor la masă a fost expusă prima dată de Dijkstra, în anul 1965 şi reprezintă o problemă clasică de...

Arhitecturi de Calcul Paralel

Sisteme abstracte de calcul parallel • Un sistem abstract de calcul paralel (SACP) este un ansamblu de module de calcul (unitati de procesare a...

Autocad pentru începători

C1.1.CONCEPTUL DE CAD TERMINOLOGIE - COMPUTER AIDED ENGINEERING -CAE-vizeazăetapeledecercetare,inovaresiconcepţie; - COMPUTER AIDED DRAWING/...

Programare orientată pe obiect C++

1. INTRODUCERE ÎN C++ Exista limbaje concepute strict pe baza conceptelor programării orientate pe obiecte (POO), de exemplu Simula sau Smalltalk....

Inginerie Software

Fazele dezvoltării unui produs software 1 Ce este ingineria programării? 2. Fazele ingineriei programării 2.1. Faza de analiză 2.2. Faza de...

Limbaje de Asamblare

Introducere. Necesitatea programării în limbaje de asamblare Modalităţile de programare s-au schimbat imens de la inventarea calculatorului, în...

Rețele de Calculatoare

O reţea de calculatoare (computer network) este un ansamblu de calculatoare interconectate prin intermediul unui mediu de comunicaţie (cablu...

Administrare rețele de calculatoare

ELEMENTELE COMPONENTE ALE UNUI SISTEM DE CALCUL Monitorul Este o periferica de iesire/intrare si este caracterizat prin: - Diagonala ecranului...

Te-ar putea interesa și

Tehnici și Algoritmi de Codare

PRESCURTĂRI 1. INTRODUCERE O temă des cercetată în telefonia mobilă este eficienţa spectrală, care deobicei are înţelesul de densitatea...

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...

Soft pentru Algoritmi Fundamentali de Determinare a Unui Flux de Cost Minim

“Diferența dintre școală și viață? În școală, înveți o lecție, apoi dai un test. În viață, ai de dat un test care te învață o lecție.” (Tom...

Implementarea algoritmilor evolutivi

Conceptul de evoluţie a fost propus de savantul englez Charles Darwin în 1859 în celebra sa carte “Originea speciilor prin selecţie naturală”....

Algoritmi Polinomiali de Generare a Submulțimilor Discrete Finite

-Introducere- Motivul alegerii acestei lucrări este de a înţelege mai bine cum un algoritm matematic de generare poate fi implementat în cadrul...

Rezolvarea Problemei Comis - Voiajorului cu Ajutorul Algoritmilor Genetici

Algoritmi genetici Tehnici adaptive de cautare euristica, bazate pe principiile geneticii si ale selectiei naturale Lucreaza cu o populatie de...

Implimentarea algoritmului A , în cadrul jocului Snake

Rezumat Proiectul Snake, ce are la bază ideea de implimentare a algoritmului A*, cunoscut ca și A star, are ca obiect determinarea drumului de...

Algoritmi paraleli

Algoritmi paraleli pentru sortare Algoritmii paraleli sunt opusi algoritmilor seriali deoarece secventele de cod pot fi executate pe mai multe...

Ai nevoie de altceva?