Chinaunix首页 | 论坛 | 博客
  • 博客访问: 347212
  • 博文数量: 78
  • 博客积分: 3380
  • 博客等级: 中校
  • 技术积分: 857
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-16 19:39
文章分类

全部博文(78)

文章存档

2011年(31)

2010年(47)

分类: C/C++

2010-09-04 15:39:25

/* ************************************************************************
 *       Filename:  insertSort.c
 *    Description: 
 *        Version:  1.0
 *        Created:  09/04/2010 02:51:54 PM
 *       Revision:  none
 *       Compiler:  gcc
 *         Author:  chengbin_liu,
 *        Company: 
 * ************************************************************************/
#include
#include
#include
void print_array(int a[],int len)
{
 int i;
 for( i=0;i {
  printf("%d\t",a[i]);
 }
 printf("\n");
}
//==============================================
//insert sort
void insert_sort(int a[],int len)
{
 int i,j,temp;
 for(i=1;i {
  temp=a[i];
  for(j=i-1;j>=0 && temp  {
   a[j+1]=a[j];
  }
  a[j+1]=temp;
 }
}
//===============================================
//shell sort
void shellsort(int a[],int len)
{
 int h,i,j,temp;
 for(h=len/2;h>0;h=h/2)
 {
  for(i=1;i  {
   temp=a[i];
   for(j=i-1;j>=0 && temp   {
    a[j+1]=a[j];
   }
   a[j+1]=temp;
  }
 }
}
//=============================================
//bubble sort
void bubble_sort(int a[],int len)
{
 int i=0;
 int j=0;
 int temp=0;
 for(i=0;i {
  for(j=0;j  {
   if(a[j]>a[j+1])
   {
    temp=a[j];
    a[j]=a[j+1];
    a[j+1]=temp;
   }
  }
 }
}
//==============================================
//quick sort
void quick_sort(int a[],int low,int high)
{
 int i,j,temp;
 if(low  {
  temp=a[low];
  i=low;
  j=high;
  while(i  {
   while(i=temp)
    j--;
   if(i    a[i++]=a[j];
   while(i    i++;
   if(i    a[j--]=a[i];
  }
  a[i]=temp;
  quick_sort(a,low,i-1);
  quick_sort(a,i+1,high);
 }
}
//=============================================
//select sort
void select_sort(int a[],int len)
{
 int i,j,x,l;
 for(i=0;i {
  x=a[i];
  l=i;
  for(j=i;j  {
   if(a[j]   {
    x=a[j];
    l=j;
   }
  }
  a[l]=a[i];
  a[i]=x;
 }
}
//==============================================
int main()
{
 int a[]={5,3,6,8,2,1,4,7,9};
 printf("befroe sort is:\n");
 print_array(a,9);
 //insert_sort(a,9);
 //shellsort(a,9);
 bubble_sort(a,9);
 //quick_sort(a,0,8);
 //select_sort(a,9);
 printf("last sort is:\n");
 print_array(a,9);
 return 0;
}

 
阅读(575) | 评论(0) | 转发(0) |
0

上一篇:常用函数

下一篇:树操作

给主人留下些什么吧!~~