Implementai urmtorii algorimi de sortare: 1. RadixSort (BucketsSort) sortarea prin distribuire sortarea numerelor naturale bazat pe valorile intrinseci ale numerelor, pe sistemul valoarea unei cifre i rangul (poziia) pe care apare n cadrul cifrei. a) Determinarea numrului de cicli nMaxC (numrul maxim de cifre care formeaz un numr din secven) (3p) b) Distribuirea repetat (nMaxC ori) a numerelor din coada global gc n cozile corespunztoare cifrelor bazei de numeraie considerate (uzual 10) i rempachetarea din cozile q[i] n gc (i=0,..,9). (6p)
Punctaj acordat:
Oficiu 1p P1 9p
Anex Pseudocod algoritmi
Radix Sort Se presupune c mulimea de sortat este alctuit din numere ntregi. Fiecare element din secvena de sortat are maxim k cifre c1c2ck.
Radix_Sort (A,n,k) /* se presupune ca numerele intregi sunt reprezentate n baza b<=10 secventa se afla intr-o coada globala gq iar q[j], j=0,,b-1 sunt cozi */ for i 0 to b-1 do q[i] ; for i 0 to k-1 do while ( not isempty(gq) ) do x del(gq) c[i] cifra i din x add (q[c[i]],x) for j 0 to b-1 do /*adauga coada q[j] la coada globala gq */ while ( not isempty(q[j]) ) do add (gq,del(q[j]) for i 0 to n-1 do A[i] del[gq] end