快速排序
来源:互联网 发布:网络监控画面时有时无 编辑:程序博客网 时间:2024/06/05 19:05
快速排序法是一种经常提及,被很多公司喜欢用来考察的排序方法,它的平均时间复杂度为O(nlongn),最差时间复杂度为O(n*n)。
/* Note:Your choice is C IDE */#include "stdio.h"void quick_sort(int a[],int n);//函数的声明后要加分号int main(){int i;int a[10];printf("please input 10 datas:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);quick_sort(a,10);printf("10 datas after sort:\n");for(i=0;i<10;i++)printf("a[%d]=%d\n",i,a[i]);return 0;}void quick_sort(int a[],int n){int temp;int i=0;int j=n-1;if(n==1)//递归结束的条件 return ;else{while(i<j) { while(a[j]>a[i])//从右向左遍历排序 j--; if(i<j) { temp=a[i]; a[i]=a[j]; a[j]=temp; i++; } while(a[j]>a[i])//从左向右遍历排序 i++; if(i<j) { temp=a[i]; a[i]=a[j]; a[j]=temp; j--; } }//此时i==j,标杆元素左边都是比其小的数,右边全是比它大的数.第一步完成quick_sort(a,i);//第二步,对标杆元素左边的数列使用快速排序quick_sort(a+i+1,n-i-1);//第三步,对标杆元素右边的数列使用快速排序}}
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- MySQL安装配置汇总(三)
- make 与gmake
- 男人必读五个小故事
- Adobe Flash Builder 4.6 下载、破译使用
- QT4.5.3移植到mini2440,tiny6410 .
- 快速排序
- 理性交易的七种基本类型
- hdu-2011-多项式求和
- POJ 3067 Saruman's Army
- POJ 1556 The Doors
- poj 3342 Party at Hali-Bula(树形DP+判断方式是不是唯一)
- ubifs文件系统的制作以及移植
- ubuntu 修改apache2 默认网站目录和默认主页文档
- 【PAT Advanced Level】1045. Favorite Color Stripe (30)