码迷,mamicode.com
首页 > 编程语言 > 详细

快速排序算法

时间:2018-03-03 19:29:07      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:查找   cout   stream   include   i+1   ++   快速排序算法   using   pac   

#include <iostream>
#include <string>

using namespace std;

void quick_sort(int a[],int left,int right)
{

//注意:这里一定要解决一个出口问题,不然程序无法出来
if(left > right)
return;
int i = left;
int j = right;
int temp = a[i];
while(i < j){

//注意,这里一定是先从右边开始查找
while(temp <= a[j] && i < j)
j--;
while(temp >= a[i] && i < j)
i++;
if(i < j){
int tmp = a[i];
a[i] = a[j];
a[j] = tmp;
}
}

//注意:这里基数回归一定是两步
a[left] = a[i];
a[i] = temp;
quick_sort(a,left,i-1);
quick_sort(a,i+1,right);
}
int main()
{
int a[5];
for(int i = 0;i < 5;i++){
cin >> a[i];
}
quick_sort(a,0,4);
for(int i = 0;i < 5;i++){
cout << a[i] << " ";
}
return 0;
}

快速排序算法

标签:查找   cout   stream   include   i+1   ++   快速排序算法   using   pac   

原文地址:https://www.cnblogs.com/Chen-Programe/p/8497218.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!