1 / 10

SORTAREA PRIN METODA BULELOR

SORTAREA PRIN METODA BULELOR. MULTIME NESORTATA MULTIME SORTATA PRIN BUBBLESORT. PRINCIPIUL METODEI.

maja
Télécharger la présentation

SORTAREA PRIN METODA BULELOR

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SORTAREA PRIN METODA BULELOR

  2. MULTIME NESORTATA MULTIME SORTATA PRIN BUBBLESORT

  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. EXEMPLU • 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 mai groasa.

  5. ALGORITM nr_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     beginaux:=a[i];           a[i]:=a[i+1];             a[i+1]:=aux; inv:=true        end; until inv=false;

  6. ANIMATIE BUBBLESORT Elementele alaturate se compara si daca nu sunt in ordinea dorita, se intershimba. 6 12 3 10 5 neterminata….!! s.a.m.d. Dupa prima parcurgere a vectorului, elementul maxim e asezat pe pozitia sa finala!!!

  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. • Bubblesorteste 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. APLICATIE • In prima ora de Educatie fizica a fiecarui an scolar, profesorul trebuie sa-si aseze elevii fiecarei clase in ordine crescatoare dupa inaltime. Cum ii sugerati sa procedeze?

  9. IMPLEMENTARE var 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     beginaux:=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. 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

More Related