编写函数实现直接插入排序。输入若干正整数,以0结束,采用直接插入排序将这些整数按照从大到小的顺序排序。
函数接口定义:
void InsertSort(SqList &L);
其中 L
是待排序的关键字,采用顺序表存储。
裁判测试程序样例:
#include <iostream>
using namespace std;
#define MAXSIZE 20 //顺序表的最大长度
typedef int ElemType;
//顺序表的存储结构
typedef struct
{
ElemType *r;//存储空间的基地址
int length; //顺序表长度
}SqList;//顺序表类型
void InsertSort(SqList &L);
void Create_Sq(SqList &L)
{
int i,n;
cin>>n;
i=1;
while(n>0)
{
L.r[i]=n;
cin>>n;
i++;
}
L.length=i-1;
}
void show(SqList L)
{
int i;
for(i=1;i<=L.length;i++)
cout<<L.r[i]<<" ";
}
int main()
{
SqList L;
L.r=new ElemType[MAXSIZE+1];
L.length&#