Chinaunix首页 | 论坛 | 博客
  • 博客访问: 49907
  • 博文数量: 27
  • 博客积分: 716
  • 博客等级: 上士
  • 技术积分: 285
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-31 11:12
文章分类

全部博文(27)

文章存档

2012年(8)

2011年(19)

我的朋友

分类: C/C++

2011-10-04 19:12:54

  1. #include <stdio.h>

  2. void show_string(int num[], int length)
  3. {
  4.     unsigned i;
  5.     for(i = 0; i < length; i++) {
  6.         printf("%3d",num[i]);
  7.     }
  8.     printf("\n");
  9. }

  10. int insert_sort(int num[], int length)
  11. {
  12.     unsigned i,j,key;

  13.     if(length < 0)
  14.         return -1;

  15.     for(j = 1; j < length; j++) {
  16.         key = num[j];
  17.         i = j-1;

  18.         while(i >= 0 && key < num[i]) {
  19.             num[i+1] = num[i];
  20.             i--;
  21.         }
  22.         num[i+1] = key;
  23.     }
  24. }

  25. int main()
  26. {
  27.     int a[5] = {1,6,8,2,5};
  28.     unsigned length = sizeof(a)/sizeof(a[0]);

  29.     show_string(a, length);
  30.     insert_sort(a,length);
  31.     show_string(a, length);
  32. }

复杂度:T(n)=n2 或 T(n)=n
阅读(569) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~