算法 - InsertSort [插入排序]


#include<iostream>
#include<cstring> 
using namespace std;
//1,2,3,4,5,4.5
//           k
//插入排序 
void insertsort(double a[],int k){
	if(k==0) return ;
	insertsort(a,k-1);     //对前k-1个元素排序 
	double x=a[k];            //保存插入元素
	int index=k-1;         //记录从插入元素的前一个(倒数第二个)元素 
	while(index>-1&&x<a[index]){
		a[index+1]=a[index];
		index--;	
	}
	a[index+1]=x;
}

int main(){
	double a[100]={
	1,3,2,43.6,5,3.5,43.213,43.212};
	int len=0;
	for(int i=0;i<100;i++){
		if(a[i]!=0) len++;
		else break;
	}
	insertsort(a,len-1);
	
	for(int i=0;i<len;i++){
		cout<<a[i]<<" ";
	}
}


全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务