希尔排序

//对一维数组中的数据从小到大排序
//基本思想:直接插入的进阶版
//将整个待排序元素序列分割成几个子序列
//分别进行插入排序
//待整个序列的元素基本有序时,对全体元素进行一次直接插入排序 
#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;
}

  

posted @ 2024-04-05 09:43  陈若麟  阅读(3)  评论(0编辑  收藏  举报