#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]<<" ";
}
}
算法 - InsertSort [插入排序]
最新推荐文章于 2024-04-24 10:59:09 发布
本文深入探讨了插入排序算法的实现,通过C++代码展示了如何对数组进行排序,并提供了完整的示例代码。文章首先定义了一个insertsort函数,该函数接受一个double类型的数组和一个整数k作为参数。通过对前k-1个元素的递归调用,实现了排序过程。随后,保存待插入元素并找到其正确位置,完成排序。

3563

被折叠的 条评论
为什么被折叠?



