快速排序算法
来源:互联网 发布:网络有哪些用处 编辑:程序博客网 时间:2024/05/16 19:43
快速排序算法的主要思想(从小到大排序):首先设置一个基准数,以这个基准数为标准,先从右往左,找到比基准数小的数,然后从左往右,找到比基准数大的数,找到了然后就交换两个数,直到往右往左时重逢。比较重逢的数,如果比基准数小,就交换基准数,重新设置基准数,重逢以上步骤。以下为一个典型的例子:
#include <iostream.h>
int a[100],n;
void quicksort(int left,int right);
void quicksort(int left,int right)
{
int i,j,t,temp;
if (left>right)
{
return ;
}
temp=a[left];
i=left;
j=right;
while (i!=j)
{
while(a[j]>=temp && i<j)
j--;
while(a[i]<=temp &&i<j)
i++;
if (i<j)
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
a[left]=a[i];
a[i]=temp;
quicksort(left,i-1);
quicksort(i+1,right);
}
int main()
{
int i,j,t;
cout<<"请输入数据个数:";
cin>>n;
cout<<"分别输入这几个数:";
for (i=0;i<n;i++)
{
cin>>a[i];
}
quicksort(1,n);
cout<<"排序后结果如下:"<<endl;
for (i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
cout<<endl;
return 0;
}
0 0
- 排序算法--快速排序
- 排序算法--快速排序
- 排序算法---快速排序
- 排序算法-快速排序
- 排序算法------快速排序
- 排序算法---快速排序
- 排序算法-快速排序
- 排序算法---快速排序
- 排序算法--快速排序
- 排序算法--快速排序
- 排序算法--快速排序
- 排序算法:快速排序
- 排序算法 快速排序
- 排序算法--快速排序
- 排序算法--快速排序
- 【排序算法】快速排序
- 排序算法--快速排序
- 排序算法:快速排序
- Visual C++开发工具与调试技巧全面总结编程技术
- Hduoj1865 【大数斐波那契】【水题】
- VC++中WPARAM和LPARAM的使用
- Path环境变量包含不存在的路径时对dll搜索的影响
- akoj-1125-小写字母变为大写字母
- 快速排序算法
- Python2.x和3.x 编码问题
- 解决was6版本过期问题
- 【gcj 2008 1b】numbers: 复数的次方取整+矩阵加速
- Demo_Sql数据库-增删改查_141018
- cocos2dx 常用动作(action)例子集锦
- 金正恩出来了
- 【Tools.Eclipse】代码自动提示
- 桶排序算法