?? algo1006b.cpp
字號:
int Partition(SqList &L, int low, int high) { // 算法10.6(b)
// 交換順序表L中子序列L.r[low..high]的記錄,使樞軸記錄到位,
// 并返回其所在位置,此時,在它之前(后)的記錄均不大(小)于它
KeyType pivotkey;
L.r[0] = L.r[low]; // 用子表的第一個記錄作樞軸記錄
pivotkey = L.r[low].key; // 樞軸記錄關鍵字
while (low<high) { // 從表的兩端交替地向中間掃描
while (low<high && L.r[high].key>=pivotkey) --high;
L.r[low] = L.r[high]; // 將比樞軸記錄小的記錄移到低端
while (low<high && L.r[low].key<=pivotkey) ++low;
L.r[high] = L.r[low]; // 將比樞軸記錄大的記錄移到高端
}
L.r[low] = L.r[0]; // 樞軸記錄到位
return low; // 返回樞軸位置
} // Partition
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -