首页 > 编程 > C > 正文

插入排序的顺序表实现代码

2020-01-26 15:38:11
字体:
来源:转载
供稿:网友

复制代码 代码如下:

#include<stdio.h>
typedef struct {
 int key;
}RecType;
typedef struct {
 RecType R[100+1];
 int Length;
}SqList;

#define N 11//为测试方便,直接输入11个整数
void InsertSort(SqList *L)
{
 int i,j;
 for(i=2;i<=L->Length;i++)
  if(L->R[i].key<L->R[i-1].key)
  {
   L->R[0]=L->R[i];
   //value of  under j compare with up decrease 1
   for(j=i-1;L->R[0].key<L->R[j].key;j--)
    L->R[j+1]=L->R[j];
   L->R[j+1]=L->R[0];
  }
}
int main()
{
    SqList L;
 int a[N],i,j,x;
 for(i=1;i<N;i++)
  scanf("%d",&L.R[i].key);
 L.Length=i-1;
 InsertSort(&L);

 for(i=1;i<N;i++)
  printf("%4d",L.R[i].key);
 printf("/n");
 return 0;
}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选