排序的概念
排序
排序就是將一組雜亂無章的數據按照一定的規律(升序或降序)組織起來。
排序碼
通常數據元素有多個屬性域,其中有一個屬性域可用來區分元素,作爲排序依據,該域即爲排序碼。
- 按主排序碼進行排序,排序的結果是唯一的。
- 按照次排序碼進行排序,排序的結果不是唯一的。
排序算法穩定性
如果在元素序列中有兩個元素R[i]和R[j],他們的排序碼K[i]==K[j],且在排序之前,元素的前面。如果在排序之後,元素之前,則稱這個排序算法是穩定的,否則稱這個排序算法是不穩定的。
- 內部排序:數據元素全部放在內存中的排序。
- 外排排序:數據元素太多不能同時放在內存中,根據排序過程的要求不能在內外存之間移動數據的排序。
常見的排序算法
各種算法比較
視覺感受各排序算法
http://blog.jobbole.com/11745/
各排序算法比較
http://dsqiu.iteye.com/blog/1707423