希尔排序
//对一维数组中的数据从小到大排序 //基本思想:直接插入的进阶版 //将整个待排序元素序列分割成几个子序列 //分别进行插入排序 //待整个序列的元素基本有序时,对全体元素进行一次直接插入排序 #include<iostream> #include<math.h> using namespace std; int main(){ string a="gfgfgfddbda"; for(double i=11;i>1;){ i=round(i/2); for(int j=0;j+(int)i<11;j++){ if(a[j]>a[j+(int)i]){ swap(a[j],a[j+(int)i]); } } } for(int i=0;i<11;i++){ cout<<a[i]; } return 0; }