2022/10/24
2693

Java程式教室(六):選擇排序法

Java程式密技-陣列 排序

JAVA程式教學-排序

排序是程式開發中非常常見的操作,對一組任意的資料照某個關鍵字為條件進行排序,排序完成的序列可用於快速尋找相關紀錄。
Java在陣列(array),集合(collection),Stream中,針對排序依照comparable與comparator兩個介面提供的規則設計相關的方法Sort的應用。
這些排序規則其實是依照演算法的排序規則去設計的,各位學員除了了解sort方法使用規則以外,建議大家了解此排序演算法的規則會對你在開發上邏輯訓練更有幫助。
以下就來介紹這個常用的排序規則—“選擇排序法”

選擇排序法

選擇排序法的想法很簡單,重點就是以現有資料總數,前後相鄰的兩筆資料彼此互相比較,以此相同規則執行”總次數-1”次的比較,以下舉例:
假設有一組資料為-[21,30,49,30*,16,9](其中30*為文字),要重新排序,由小到大,30*以30來看。
 

問題分析

執行步驟為,先第一個數字與後面數字比,如果後面小,及兩個數字交換位址,後面數字變第一個,這新的第一個在跟後面比,後面小在交換變成新的第一位,例如:
原資料->[21,30,49,30*,16,9]--->六個資料
第一次比較後:9,30,49,30*,21,16->21先與16換,16再與9換
第二次比較後:9,16,49,30*,30,21->30與21換,21再與16換
第三次比較後:9,16,21,49,30,30*->49與30*換,30*再與21換
第四次比較後:9,16,21,30,49,30*->49與30換
第五次比較後:9,16,21,30,30*,49->49與30*換
六個資料,執行5次比較,所以為總次數-1

程式執行結果如下

1

根據此要求結果,分析出需要,得出需撰寫2個class

1.DataWrap.class定義資料的物件
2.
SelectSortEx.class執行排序結果

Step1,撰寫 DataWrap.class,每一筆資料物件規則
3

Step2.撰寫SelectSortEx.class內容
1.選擇排序法規則->selectSort方法
5

2.執行步驟->main方法

7
 
最後測試完成程式->所有程式內容

9
11
13

---

>>程式課程試聽索取 

>>職訓補助課程
 


相關文章:

>>Java程式教室(三):用JAVA寫出擲骰子遊戲
>>如何利用Python爬取靜態網頁資料
 



  江聖榮 老師
  專長:

  程式設計:從前端(UI front-end)到後端(Back-end)之全端工程師(full-stack)
  精通語言:Java、Javascript 前後端框架   
  開課詳情

 
LINE-friend
近期文章熱搜文章排行
熱門標籤熱門標籤
近期文章你可能有興趣的文章
熱門標籤熱門標籤