请教帮忙编个C++小程序

来源:百度知道 编辑:UC知道 时间:2024/05/31 16:07:33
在土豆上看到一个算法,冥思苦想编不出,麻烦请各位高人帮忙编个程序;
视频地址是: http://www.tudou.com/programs/view/htKY1-Rj9ZE

谢谢啦

原来写的,仅供参考

#include <stdlib.h>
#include <time.h>
#include <iostream>
using namespace std;

int a[100];

void swap(int &a,int &b)
{
int temp=a;
a=b;
b=temp;
}

int find_mid(int l,int h)
{
int piovt=a[l];
int last_small=l;
for(int i=l;i<=h;i++)
{
if(piovt>a[i])
{
last_small++;
swap(a[last_small],a[i]);
}
}
swap(a[last_small],a[l]);
return last_small;
}

void quick_sort(int l,int h)
{
int mid;
if(h>l)
{
mid=find_mid(l,h);
quick_sort(l,mid-1);
quick_sort(mid+1,h);
}
}

int main()
{
srand((unsigned)time(NULL));
for(int i=0;i<99;i++)
a[i]=rand()%200;
for(i=0;i<99;i++)
cout<<a[i]<<" ";
cout<<endl;
quick_sort(0,99);
for(i=0;i<99;i+