Re: [問題] Quick Sort : Middle

看板java作者 (痞子軍團團長)時間10年前 (2014/04/28 18:56), 10年前編輯推噓6(607)
留言13則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《kingofsdtw (不能閒下來!!)》之銘言: : 請問... : Quick Sort按照"原意" middle應該是啥呢? : 目前以下都寫出可以跑的Function : 但是身邊查到的國外網頁教學和課本大多是採用a 方案 : a. middle = arry[left + right]; : if(arry[left]> middle)..... : b. middle = (left +right) /2; : if(arry[left] >arry[middle] ).... : Code: http://codepad.org/iVymx6kA 1. 我不覺得這是 Java 問題 2. 你的程式碼註解... 幾乎可視為沒有 把右大括號打上註解,著名左大括號的... 用意(?) 這幾乎沒有什麼額外的意義 3. 我實在看不懂你文章當中的 a 要怎麼跑 用你程式裡頭的變數定義 (然後還得自己把 array 代換成 data, 以及忽略搞不懂你的 if 到底是指程式碼中的哪一段) 你寫的 a 不是有 typo,不然就是... 我也不知道是什麼了 是故,原文給予 s -- 錢鍾書: 說出來的話 http://www.psmonkey.org 比不上不說出來的話 Java 版 cookcomic 版 只影射著說不出來的話 and more...... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.43.107.35 ※ 文章網址: http://www.ptt.cc/bbs/java/M.1398682587.A.9E1.html

04/28 20:28, , 1F
middle就只是取陣列中間的意思而已 a是取該數字 b是位置
04/28 20:28, 1F

04/28 20:30, , 2F
a少了/2 →middle = arry[(left+right)/2];
04/28 20:30, 2F

04/28 20:33, , 3F
至於if 為什麼找不到:他只是舉例而已
04/28 20:33, 3F

04/28 21:29, , 4F
你的code算法正確嗎
04/28 21:29, 4F

04/28 21:34, , 5F
第一個DATA[]如果1不是第一個元素 就可能不是升冪排序
04/28 21:34, 5F

04/28 21:45, , 6F
樓上 你可能不太懂Quick Sort的算法 1是不是第一個沒差
04/28 21:45, 6F
^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 一個上來問 quick sort 的人做出如此發言,我無言

04/28 21:49, , 7F
正常QUICKSORT對任何陣列都能得到升冪排序的結果吧?
04/28 21:49, 7F

04/28 21:50, , 8F
他的code對某些陣列來說沒辦法得到正確的升冪排序
04/28 21:50, 8F

04/28 21:52, , 9F
QuickSort本來不管如何都無法有正確的排序big O(n logn)
04/28 21:52, 9F
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 我完全看不懂這句在講什麼,懇請國文大師幫忙斷句 如果是「QuickSort本來不管如何都無法有正確的排序,big O(n logn)」 先不論後頭幹麼扯個 big-O n*log(n) 只是看到有一種排序演算法,居然沒辦法保證有正確的排序 那我還不如乖乖用 bubble sort 就算了 至於其他斷句的可能,我無法 綜觀原 po k47100014 的發問 以我淺薄的演算法 / 國文 / Java 程度 我實在無法感受到發問的誠意

04/28 21:53, , 10F
如果QuickSort不是要排升/降冪 那就是我搞錯了
04/28 21:53, 10F
morris282 的氣度,請受小的我一拜 Orz 所以我決定連我這篇也 s 了 ※ 編輯: PsMonkey (114.43.107.35), 04/28/2014 22:06:27

04/28 22:00, , 11F
阿 我錯了 morris你是對的
04/28 22:00, 11F

04/28 22:03, , 12F
我Code 有Bug無法排升/降冪 @@??
04/28 22:03, 12F
然後我也搞錯了,原來兩個 k 不是同一個人 在此致歉... Orz 不過我還是決定 s 文 ※ 編輯: PsMonkey (114.43.107.35), 04/28/2014 22:07:50

04/28 22:25, , 13F
{12,5,26,7,14,3,7,2,1}似乎沒辦法得到正確的排序
04/28 22:25, 13F
文章代碼(AID): #1JNZFRdX (java)
討論串 (同標題文章)
文章代碼(AID): #1JNZFRdX (java)