Re: [問題] 利用指標完成quicksort

看板C_and_CPP作者 (石斛蘭)時間15年前 (2010/03/22 03:15), 編輯推噓5(501)
留言6則, 6人參與, 最新討論串2/3 (看更多)
演算法本身就是錯的吧... 考慮 input[] = {3,1,2,3,4,5}; front last | | +---+---+---+---+---+---+ | 3 | 1 | 2 | 3 | 4 | 5 | +---+---+---+---+---+---+ meddle:3 因為 *last >= meddle 所以 last-- front last | | +---+---+---+---+---+---+ | 3 | 1 | 2 | 3 | 4 | 5 | +---+---+---+---+---+---+ meddle:3 again, *last >= meddle 所以 last-- front last | | +---+---+---+---+---+---+ | 3 | 1 | 2 | 3 | 4 | 5 | +---+---+---+---+---+---+ meddle:3 有等號的關係...again front last | | +---+---+---+---+---+---+ | 3 | 1 | 2 | 3 | 4 | 5 | +---+---+---+---+---+---+ meddle:3 跳出while(), swap(*front,*last); front last | | +---+---+---+---+---+---+ | 2 | 1 | 3 | 3 | 4 | 5 | +---+---+---+---+---+---+ meddle:3 接著 *front <= meddle 所以 front++ front last | | +---+---+---+---+---+---+ | 2 | 1 | 3 | 3 | 4 | 5 | +---+---+---+---+---+---+ meddle:3 直到 last front | | +---+---+---+---+---+---+ | 2 | 1 | 3 | 3 | 4 | 5 | +---+---+---+---+---+---+ meddle:3 然後 swap(*last,*front) last front | | +---+---+---+---+---+---+ | 2 | 1 | 4 | 3 | 3 | 5 | +---+---+---+---+---+---+ meddle:3 你會發現, 這個演算法根本就不正確... ̄▽ ̄|| -- 人家可不是為了你才這樣做的哦! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.198.35.85

03/22 11:18, , 1F
喔喔 有圖有推 XD
03/22 11:18, 1F

03/22 11:20, , 2F
都是複製貼上啦XD
03/22 11:20, 2F

03/22 11:23, , 3F
太熱心了, 推:)
03/22 11:23, 3F

03/22 11:33, , 4F
推圖是一定要的啦XD
03/22 11:33, 4F

03/22 11:39, , 5F
有圖有推
03/22 11:39, 5F

03/22 15:26, , 6F
有圖有推
03/22 15:26, 6F
文章代碼(AID): #1Bfk39yP (C_and_CPP)
文章代碼(AID): #1Bfk39yP (C_and_CPP)