经典算法--快速排序

来源:互联网 发布:日程本 知乎 编辑:程序博客网 时间:2024/06/10 22:04

最近参加了华为的面试,发现他们很喜欢考你排序算法,回来之后复习了一下排序


#include<iostream>using namespace std;int Partition(int *array,int low,int high){int key=array[low];while(low<high){while(low<high&&array[high]>key) high--;array[low]=array[high];while(low<high&&array[low]<key) low++;array[high]=array[low];}array[low]=key;return low;}void qsort(int *array,int low,int high){if(low<high){int po=Partition(array,low,high);qsort(array,low,po-1);qsort(array,po+1,high);}}int q[10010];int main(){int q[10]={1,3,5,7,9,10,8,6,4,2};qsort(q,0,9);for(int i=0;i<10;i++)printf("%d ",q[i]);}


0 0
原创粉丝点击