希爾排序【模板】
希爾排序用了用了更少的時間編出來:
#include <iostream>
void Shellsort(int A[],int p,int r)
{
int d=r-p+1; //將 length(A) 賦給d
int i,j,tmp;
while(d>=1)
{
d/=2;
for(i=p+d;i<=r;i++)
{
tmp=A[i];
j=i-d; //從i的前一個步長開始
while(j>=p && tmp<A[j])
{
A[j+d]=A[j]; //記錄後移
j-=d; //向前計數
}
A[j+d]=tmp;
}
}
}
int main()
{
int A[6]={0,5,3,2,1,4};
Shellsort(A,1,5);
for(int i=1;i<=5;i++)
printf("%d ",A[i]);
return 0;
}
運行結果為:
1 2 3 4 5
最後更新:2017-04-03 14:53:58
上一篇:
最新java編程50題及答案
下一篇:
【菜鳥翻譯】Creating an Android Project
用自然語言教育人工智能:百度新算法發展出zero-shot學習能力
[LeetCode]28.Implement strStr()
在CentOS6.5無外網環境下的MariaDB-Galera-Cluster 5.5集群的安裝和配置
java activiti web流程設計器 工作流的 整合視頻教程 SSM和獨立部署
Android ActionBar 作為導航條的一個Bug
Android MediaPlayer播放prepareAsync called in state 8解決辦法
寫一個簡單的工作流(四)資源的處理
HttpClient通過Post上傳文件
.xin域名亮相2017雲棲大會·上海峰會(火爆現場)
《容器技術係列》一3.1 引言