2018年2月20日 星期二

[JAVA] 合併排序法(Merge sort)

※ 此程式碼並非優化版本,僅供個人學習用途,若有任何問題請告知



程式碼如下:
結果如下:
請輸入數值個數:10
請輸入 10 個數字:
100 90 80 70 60 50 40 30 20 10


排序前:
100 90 80 70 60 50 40 30 20 10


90 100 80 70 60 50 40 30 20 10


80 90 100 70 60 50 40 30 20 10


80 90 100 60 70 50 40 30 20 10


60 70 80 90 100 50 40 30 20 10


60 70 80 90 100 40 50 30 20 10


60 70 80 90 100 30 40 50 20 10


60 70 80 90 100 30 40 50 10 20


60 70 80 90 100 10 20 30 40 50


10 20 30 40 50 60 70 80 90 100


排序後:
10 20 30 40 50 60 70 80 90 100


2 則留言:

  1. 請問一下
    要怎麼更改成只需要結果的程式碼....

    回覆刪除
    回覆
    1. Hi,現在才看到留言,可能已經太晚了,希望後來有解決遇到的問題了XD

      但我還是試著回答一下:
      只需要結果的意思是,想捨棄排序前的各次排序變化,單純只輸出排序後的數字嗎?
      如果是這樣,那可以將 11、12、14 行的 print() 移除即可。

      又或者你的需求是想先寫好固定的一組數字,而非讓 User 自行輸入的話,那請將 5-12、14 行刪除,並於 main() 中新增 int[] n = {n1, n2, n3, ... , nm},陣列中數值自行代入即可。

      刪除