排序是計算機程序設計中的一種重要操作,他的功能是將一個數據元素(或記錄)的任意序列,重新排列一個按關鍵字有序的序列。
內部排序
等待排序的記錄存放在計算機隨機存儲器中進行排序的過程
外部排序
等待排序的記錄數量很大,以至內存一次不能容納全部記錄,在排序的過程中還需要對外存進行訪問的排序過程,
穩定的排序的算法
按照關鍵字判斷兩個數據元素或記錄是“相等”的,這兩個“相等”元素在排序前後的相對位置不變的排序算法是穩定的。
不穩定的排序算法
按照關鍵字判斷兩個數據元素或記錄是“相等”的,這兩個“相等”元素在排序前後的相對位置發生改變的排序算法是不穩定的。
排序的分類
按照排序過程中所依據的不同原則,進行分類大致可以分爲以下幾類:
- 插入排序
- 交換排序
- 選擇排序
- 歸併排序
- 計數排序
基本操作
- 比較兩個關鍵字的大小
- 將記錄從一個位置移動到另外一個位置