Metoda bulelor

3,015 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,015
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Metoda bulelor

  1. 1. SORTAREA PRIN METODA BULELOR
  2. 2. MULTIME NESORTATA MULTIME SORTATA PRIN BUBBLESORT
  3. 3. PRINCIPIUL METODEI  Ideea de baza a sortarii prin metoda bulelor este in a parcurge tabloul de la stanga spre dreapta, fiind comparate elementele alaturate a[ i ] si a[i+1]. Daca vor fi gasite 2 elemente neordonate valorile lor vor fi interschimbate.  Parcurgerea tabloului de la stinga spre dreapta se va repeta atat timp cat vor fi intalnite elemente neordonate.  Sortarea prin metoda bulelor se considera drept una din cele mai putin eficiente metode de sortare dar cu un algoritm mai putin complicat.
  4. 4. EXEMPLUVectorul prelucrat Numarul parcurgerii10 5 6 12 3 7 125 10 6 12 3 7 125 6 10 12 3 7 12 15 6 10 12 3 7 125 6 10 3 12 7 125 6 10 3 7 12 125 6 10 3 7 12 125 6 10 3 7 12 12 25 6 10 3 7 12 125 6 3 10 7 12 125 6 3 7 10 12 125 6 3 7 10 12 12 35 3 6 7 10 12 125 3 6 7 10 12 12 43 5 6 7 10 12 12•Fiecare pereche analizata este evidentiata printr-un chenar dublu,colorata gri in cazul in care elementele trebuie interschimbate.• Limita fiecarei etape de verificare este marcata prin linie dubla maigroasa.
  5. 5. ALGORITMnr_parc:=0; {variabila contor numara la a cata parcurgere a vectorului suntem; parcurgerea vectorului se repeta pana cand la o parcurgere nu se mai pot face interschimbari}repeat inv:=false; nr_parc:=nr_parc+1; for i:=1 to n-nr_parc do   if a[i]>a[i+1] then      begin            aux:=a[i];            a[i]:=a[i+1];              a[i+1]:=aux; inv:=true       end;until inv=false;
  6. 6. ANIMATIE BUBBLESORT Elementele alaturate se compara si daca nu sunt in ordinea dorita, se intershimba. 10 5 6 12 3 neterminata….!! s.a.m.d.Dupa prima parcurgere a vectorului, elementul maxim e asezat pe pozitia sa finala!!!
  7. 7. COMPLEXITATEA ALGORITMULUI Sortarea prin meteoda bulelor este o metoda de sortare simpla, eficienta pentru un numar mic de elemente (mai putin de 15), dar nu pentru tablouri mari. Bubblesort este extrem de eficienta în ceea ce priveşte utilizarea memoriei, datorită faptului că toate operaţiunile de triere sunt efectuate pe multimea initiala de date. Timpul de executie depinde de ordinea initiala a elementelor. Daca tabloul este deja sortat e nevoie de un singur pas, adica N-1 comparari. In cazul cel mai nefavorabil sunt necesare N ×(N-1)/2 comparari si N × (N-1)/2 interschimbari. Performanta algoritmului in caz general este mai greu de analizat dar este asemanator cazului nefavorabil.
  8. 8. APLICATIEIn prima ora de Educatiefizica a fiecarui an scolar,profesorul trebuie sa-siaseze elevii fiecarei clase inordine crescatoare dupainaltime. Cum ii sugerati saprocedeze?
  9. 9. IMPLEMENTAREvar a:array[1..100] of integer; x,n i,k:integer; inv:boolean;begin write(‘dati numarul de elevi din clasa’); readln(n); for i:=1 to n do begin write(‘inaltimea elevului ’, i); readln(a[i]); end; nr_parc:=0; repeat inv:=false; nr_parc:=nr_parc+1; for i:=1 to n-nr_parc do   if a[i]>a[i+1] then      begin            aux:=a[i];            a[i]:=a[i+1];              a[i+1]:=aux; inv:=true       end; until inv=false; write(‘elevii aranjati crescator dupa inaltime’); for i:=1 to n do write(a[i], ‘ ‘);end.BUBBLE.EXE
  10. 10. BIBLIOGRAFIE http://dranaxum.files.wordpress.com/2007/11/studiu-asupra-timpilor-de- sortare.pdf http://buffered.io/2008/08/14/sorting-algorithms-the-bubble-sort/ http://hosok2.com/project/dataExpansion_1/Bubble_sort_animation.gif

×