Chinaunix首页 | 论坛 | 博客
  • 博客访问: 257098
  • 博文数量: 49
  • 博客积分: 110
  • 博客等级: 民兵
  • 技术积分: 510
  • 用 户 组: 普通用户
  • 注册时间: 2013-01-13 00:59
个人简介

make it run,make it better,make it fast. https://github.com/liulanghaitun

文章分类

全部博文(49)

文章存档

2023年(1)

2022年(2)

2020年(4)

2019年(4)

2017年(15)

2016年(3)

2014年(3)

2013年(14)

分类: Windows平台

2013-04-10 00:11:06

#include
#include

/**
 * 数据交换
 */
static void swap(int* first,int* second)
{
         int tmp = *first;
         *first = *second;
         *second = tmp;
}

/**
 * 分割区间
 */
static int partiation(int array[],const int left,const int right)
{
         int baseValue = array[right];
         int tail = left - 1;
         int head;
         for(head = left;head <= right;++head)
         {
              if(array[head] <= baseValue)
              {    
                   tail++;
                   swap(array+tail,array+head);
                }    
         }
         return tail;
}

/**
 * 打印数组
 */
static void printArray(int input[],int length)
{
         int index ;
         for(index = 0;index          {
              printf("%d\t",input[index]);
         }            
}


/**
 * 快速排序
 */
static void quickSort(int array[],const int left,const int right)
{
         if(left < right)
        {            
              const int position = partiation(array,left,right);
              quickSort(array,left,position-1);
              quickSort(array,position+1,right);
        }
}

/**
* 主函数
*/
int main(void)
{
             int input[] = {2,89,-897,756,654,12,54};
             const int length = sizeof(input)/sizeof(input[0]);
             printArray(input,length);
             printf("%s\n","\n--------------------quickSort--------------------");
             quickSort(input,0,length-1);
             printArray(input,length);
             return EXIT_SUCCESS;
}

运行结果:
2       89      -897    756     654     12      54
--------------------quickSort--------------------
-897    2       12      54      89      654     756

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

上一篇:单链表反转

下一篇:无线驱动安装(BCM4312)

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