看板 TransCSI 關於我們 聯絡資訊
: : 此時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
future1234:你確定 j 在這有跟 i 交錯的機會 ? 06/10 10:09
RJking:是要看程式碼沒錯...老師說得不一定就是只有那一種 06/10 13:29
RJking:就怕考試較你寫出程式...搞懂演算法作法比較重要... 06/10 13:30
RJking:最好多參考幾本書,就怕老師的觀念對但作法錯 06/10 13:31