C:
#include <iostream>
using namespace std;
#define MAXSIZE 5
typedef struct
{
int r[MAXSIZE+1];
int length;
}SqList;
//直接插入排序
void InsertSort(SqList *L)
{
int i, j;
for (i=2;i<=L->length;i++)
{
if (L->r[i]<L->r[i-1])
{
L->r[0]=L->r[i];
for(j=i-1;L->r[j]>L->r[0];j--)
L->r[j+1]=L->r[j];
L->r[j+1]=L->r[0];
}
}
}
int main()
{
SqList* L = ( SqList* ) malloc( sizeof( SqList ) );//分配内存,初始化
L ->length=5;
for(int i=0;i<=L->length;i++)
{
cin>>L ->r[i];
}
for(int i=0;i<=L->length;i++)
{
cout<<L ->r[i];
}
InsertSort(L);
for(int i=0;i<=L->length;i++)
{
cout<<L ->r[i];
}
}
Python:
L1=[0,5,3,4,6,2]
def InsertSort(L1):
for i in range (2,len(L1)):
if (L1[i]<L1[i-1]):
L1[0]=L1[i]
j=i-1
while L1[j]>L1[0]:
L1[j+1]=L1[j]
j=j-1
L1[j+1]=L1[0]
if __name__ == "__main__":
InsertSort(L1)
print(L1)