排序 sorting
排序(sorting)
將一組資料一使用者需求,予以重新排列其順序。一般會依資料之大小順序排序(由大至小、或由小至大)。排序後之資料,優點為容易閱讀、統計分析、與快速搜尋所要之資料。
「資料結構」課程中,排序法分分類方式有三類:
第一類:內部與外部排序
內部排序(Internal sort)又稱「陣列排序」
  【定義】排序之工作,主要在主記憶體(RAM)完成
  【適用時機】資料量較少者;
外部排序(External sort)又稱「檔案排序」
  【定義】排序之工作,主要是在輔助記憶體(Disk, File)完成
  【適用時機】資料量較大者
第二類:穩定與不穩定排序法
穩定排序法(stable sorting),如果鍵值相同之資料,在排序後相對位置與排序前相同時,稱穩定排序
  【例如】
  排序前:3,5,19,1,3*,10
  排序後:1,3,3*,5,10,19 (因為兩個3, 3*的相對位置在排序前與後皆相同。)
不穩定排序法(unstable sorting),如果鍵值相同之資料,在排序後相對位置與排序前不相同時,稱不穩定排序。
  【例如】
  排序前:3,5,19,1,3*,10
  排序後:1,3*,3,5,10,19 (因為兩個3, 3*的相對位置在排序前與後不相同。)
第三類:簡單與高等排序法
簡單排序法
  【定義】排序演算法簡單,但執行時間較長
  【平均時間複雜度】
高等排序法
  【定義】排序演算法複雜,執行時間較短
  【平均時間複雜度】