排序算法分析
大多數排序算法都有兩個基本的操作
(
(
注意
第(
(
排序過程
(
排序過程
(
排序過程
避免排序過程中移動記錄的排序方法
(
評價排序算法好壞的標准主要有兩條
① 執行時間和所需的輔助空間
② 算法本身的復雜程度
(
若排序算法所需的輔助空間並不依賴於問題的規模n
非就地排序一般要求的輔助空間為O(n)
(
大多數排序算法的時間開銷主要是關鍵字之間的比較和記錄的移動
於輸入實例中數據的狀態
文件的順序存儲結構表示
#define n l
typedef int KeyType; //假設的關鍵字類型
typedef struct{ //記錄類型
KeyType key; //關鍵字項
InfoType otherinfo;//其它數據項
}RecType;
typedef RecType SeqList[n+
注意
若關鍵字類型沒有比較算符
【例】關鍵字為字符串時
用C++,則定義重載的算符"<"更為方便。
From:http://tw.wingwit.com/Article/program/sjjg/201311/23809.html