miercuri, 6 noiembrie 2013

Ordonarea grupurilor de date

1.Algoritmul de sortare prin interschimbari directe
Pentru ordonarea unei liste de elemente in mod crescator cu elementele [0],X[1],...,X[n-1] .
Fiecare din elementeleX[0],X[2],... X[i],....X[j],......X[n-2] va juca rolul unui pivot

Să presupunem că vrem să sortăm un şir de numere întregi, memorate într-un tablou. Fie şirul de elemente:

X[0]  X[1]  X[2]  X[3]  X[4]
4    -3    5  -6   1

i=0 ,X[0] PIVOT
j=1,X[1]<X[0] -3<4?  Da SE interschimba X[1] cu X[0] -3 4 5 -6 1
j=2,X[2]<X[0]  5<-3? Nu
j=3,X[3]<X[0] -6<-3 DA se interschimba X[3] cu X[0] -6 4 5 -3 1
j=4,X[4]<X[0]  1<-6? Nu

i=1 ,X[1] PIVOT
j=2,X[2]<X[1]  5<4?  nu 
j=3,X[3]<X[1]  -3<4? da se interschimba X[3] cu X[1] -6 -3 5 4 1
j=4,X[4]<X[1]  1<-3? nu 

i=2 ,X[2] PIVOT
j=3,X[3]<X[2]  4<5?  da se interschimba X[3] cu X[2] -6 -3 4 5 1
j=4,X[4]<X[2]  1<4? da se interschimba X[4] cu X[2] -6 -3 1 5 4

i=3 ,X[3] PIVOT
j=4,X[4]<X[3]  4<5?  da se interschimba X[4] cu X[3] -6 -3 4 5 1
j=4,X[4]<X[2]  1<4? da se interschimba X[4] cu X[2] -6 -3 1 4 5
scrie vectorul X[i]
citeste vectorul x[i]
 pentru(i=0;i<=n-2;i++)
   pentru(j=i+1;j<=n-1;j++)
      daca(X[j]<x[i])
              {
              aux=x[i];x[i]=x[j];x[j]=temp
               }

2.Algoritmul de sortare prin metoda bulelor(bubble-sort)
3.Algoritmul de sortare prin selectie