?? 9_3.txt
字號:
void ShellInsert(RecordType r[], int length, int delta)
/*對記錄數(shù)組r做一趟希爾插入排序,length為數(shù)組的長度,delta 為增量*/
{
int i,j;
for(i=1+delta;i<= length; i++) /* 1+delta為第一個子序列的第二個元素的下標(biāo) */
if(r[i].key < r[i-delta].key)
{
r[0]= r[i]; /* 備份r[i] (不做監(jiān)視哨) */
for(j=i-delta; j>0 &&r[0].key < r[j].key; j-=delta)
r[j+delta]= r[j];
r[j+delta]= r[0];
}
}/*ShellInsert*/
void ShellSort(RecordType r[], int length, int delt[], int n)
/*對記錄數(shù)組r做希爾排序,length為數(shù)組r的長度,delta 為增量數(shù)組,n為delta[]的長度 */
{
int i;
for(i=0 ; i<=n-1; ++i)
ShellInsert(r, length, delt[i]);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -