Strona 1 z 1

[Algorytmy][Quicksort] problem z dokonczeniem sortowania

: 1 sty 2012, o 21:24
autor: paulisian
czesc! Na najblizsze zajecia z aisd mamy opanowac quicksort jednak mnie cos tutaj nie wychodzi. Zilustuje wam przyklad:
[2,6,4,8,7,3,1,5] - jako element podzialu wybieram 5 i po porownaniach wychodzi ze:
[2,4,3,1, |5|, 6, 8 ,7] - zatem biore pod uwage np. pierwsza czesc tablicy
[2,4,3,1] - element podzialu to ostatni, zatem 1:
dla i=0, j=1 mamy \(\displaystyle{ 2 \le 1}\) N
dla i=0, j=2 mamy \(\displaystyle{ 4 \le 1}\) N
dla i=0, j=3 mamy \(\displaystyle{ 3 \le 1}\) N
dla i=0, j=4 mamy \(\displaystyle{ 1 \le 1}\) T
zatem zamieniam 2 z 1 i mam: [|1|,4,3,2]
zatem mam [1] oraz [4,3,2] wiec biore druga tablice:
dla i=0, j=1 mamy \(\displaystyle{ 4 \le 2}\) N
dla i=0, j=2 mamy \(\displaystyle{ 3 \le 2}\) N
dla i=0, j=3 mamy \(\displaystyle{ 2 \le 2}\) T
zatem zamieniam 3 z 2 i mam: [4, |2|, 3]
iii co dalej???
bardzo prosze o kontynuacje tego przykladu bo naprawde nie mam pojecia co dalej zrobic

[Algorytmy][Quicksort] problem z dokonczeniem sortowania

: 2 sty 2012, o 14:37
autor: matshadow
Zamieniasz 4 z 2, a nie 3 z 2. Dzielisz na połówki rekurencyjnie i je sortujesz, dopóki długość nie będzie równa 2 lub 1. Potem wracasz do tych połówek, których nie obsłużyłaś, tj np [5, 6, 8 ,7]

[Algorytmy][Quicksort] problem z dokonczeniem sortowania

: 2 sty 2012, o 19:46
autor: paulisian
dobra ok juz mam to zrobione, dzieki