Documente Academic
Documente Profesional
Documente Cultură
STR 1b SortInt
STR 1b SortInt
M mediu
dimensiunea destinaiei crete cu 1, iar a sursei scade corespunztor. Dup n-1 pai iterativi vectorul A va fi sortat cresctor.
n(n-1) C (n 1) (n 2) ... 1 2
numrul de comparaii este independent de ordinea iniial a componentelor
Mmin=3+3++3=3(n-1).
M max [(n 1) 3] [(n 2) 3] ... [1 3]
(n 1) (n 2) ... 1 3(n 1)
n(n 1) 3(n 1) 2
M mediu n(ln e)
dac la o pas nu se face nici o interschimbare, atunci sursa este sortat i, cum i destinaia este, nseamn c ntregul vector A este sortat i este inutil s mai relum pasele
- scurtarea lungimii paselor
s inem minte, nu numai faptul c s-au fcut efectiv interschimbri, dar i locul unde s-a efectuat ultima interschimbare. Din acest loc, pn la destinaie, avem de-a face cu o bucat sortat, deci e suficient s relum pasa urmtoare de la n i pn aici. Dac ultima interschimbare s-a fcut ntre A[k1] i A[k], atunci sursa pentru pasul urmtor va fi A[k+1..n]. Se schimb deci i lungimea surselor
numrul de comparaii pe care-l face algoritmul la fiecare pas iterativ i este determinat de lungimea subvectorului surs A[i..n] pe care se face o pas i este independent de ordinea cheilor. La pasul i algoritmul face Ci = n-1 comparaii
Mmin=0.
M max (n 1) * 3 (n 2) * 3 ... 1 * 3
3n(n-1) 2
M mediu
(n 1) (n 2) 1 3n(n-1) *3 * 3 ... * 3 2 2 2 4
(1) Se pornete cu incrementul h1. (2) La pasul iterativ m se consider incrementul hm . Se sorteaz prin inserie direct subvectorii obinui din vectorul inial lund elemente aflate la distana hm, adic subvectorii:
A[1], A[hm+1], A[2hm+1], A[2], A[hm+2], A[hm], A[2hm],
Apoi se reia pasul (2) pentru incrementul hm+1. Deoarece ultimul increment este ht=1, ultimul pas iterativ t se reduce la sortarea prin inserie direct, deci vectorul va fi sortat.