找女朋友
来源:互联网 发布:纳网科技域名续缴费 编辑:程序博客网 时间:2024/05/15 22:48
这道题的算法思想就是快速排序:通过一趟排序将一组元素分割成独立的两部分,其中一部分的元素均比另一部分的元素小,则可分别对这两部分元素继续进行排序,使整个序列有序。
代码如下:
#include <stdio.h>
int a[1000000];
void QuickSort(int low,int high){/*快速排序函数*/
int p;
if(low<high){
p=Partition(low,high);//算出p的值,将数组a一分为二;
QuickSort(low,p-1);//将p左边的元素进行递归快速排序;
QuickSort(p+1,high);//将p右边的元素进行递归快速排序;
}
}
int Partition(int low,int high){//对数组进行排序,使p左边的元素均小于p,使p右边的元素均大于p;
int p,d;
p=a[low];
while(low<high){
while(low<high&&a[high]>=p)
high--;
d=a[low];//将比p小的交换到低的一端;
a[low]=a[high];
a[high]=d;
while(low<high&&a[low]<=p)
low++;
d=a[low];//将比p大的交换到高的一端;
a[low]=a[high];
a[high]=d;
}
return low;
}
int main(){
int n,i,j,d;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
QuickSort(0,n-1);
for(i=n-1;i>=0;i--){
if(i==n-1)
printf("%d",a[i]);
else
printf(" %d",a[i]);
}
printf("\n");
return 0;
}
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友
- 找女朋友的标准
- 找女朋友的标准
- file知识点总结,自己学的
- 合并果子
- JZOJ4711. Binary
- 快速排序算法学习笔记
- Hdu 3662 3D Convex Hull(三维凸包)
- 找女朋友
- JavaWeb学习篇之----Servlet过滤器Filter和监听器
- chapter2、操作系统简介
- hdu 1814
- BSGS(a^x%p=b)
- 关于计算几何
- 多个线程执行多个任务,解决该问题的死锁问题
- Ubuntu下Crtmp服务器的搭建及过程中遇到的问题解决方法
- xml四种解析技术 简述 优缺点