Re: [問題] QuickSort的問題
: : 此時swap i跟j
: : 61 , 59 , 37 , 27
: : ij
: : j繼續前進
: : 61 , 59 , 37 , 27
: : j i
: 依照你做題方式,你的pivot應該是61了
: 61的話,最後i跟j會停在27,SWAP 61跟27,變27 59 37 61(61不加入下次排序)
: 然後pivot變27,i跟j停在59,但27比59小,所以不會SWAP,剩下59 37
: 最後pivot變59,.....(中略),SWAP 59跟37,之後判斷排序結束
: 其實要看程式寫法...參考這篇http://0rz.tw/a122P
: 裡面的C的寫法比較OK,不是判斷ij是否交錯,而是判斷i是否<j(因為會有i=j)
: 雖然也不很OK啦
: 總之如果有給定程式碼或虛擬碼就照著做比較好
所以是說要看程式怎麼寫嗎?
老師是教說"i,j交錯後再swap pivot跟j"
交錯後j不就是指向37嗎?
這裡還不太懂
麻煩各位了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.24.226.36
推
06/10 10:09, , 1F
06/10 10:09, 1F
→
06/10 13:29, , 2F
06/10 13:29, 2F
→
06/10 13:30, , 3F
06/10 13:30, 3F
→
06/10 13:31, , 4F
06/10 13:31, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):