#include<iostream>
#include<cstdio>
using namespace std;
int array[1001];
void quicksort(int *,int,int);
void swap(int &,int &);
int main()
{
ios::sync_with_stdio(false);
cout << "Enter the Number of digits:\n";
int number_of_digits;
cin >> number_of_digits;
cout << "Enter " << number_of_digits << " digits:\n";
for(int i = 0 ; i < number_of_digits ; ++i)
cin >> array[i];
quicksort(array,0,number_of_digits-1);
cout << "Ascending order:\n";
for(int j = 0 ; j < number_of_digits - 1 ; ++j)
cout << array[j] << " ";
cout << array[number_of_digits-1] << endl;
return 0;
};
void quicksort(int *arr,int start,int end)
{
int i = start; int j = end; int pivot = arr[start];
if(i > j)
return;
while(i != j)
{
while(i < j && arr[j] >= pivot)
--j;
while(i < j && arr[i] <= pivot)
++i;
if(i < j)
swap(arr[i],arr[j]);
};
swap(arr[start],arr[i]);
quicksort(arr,i+1,end);
quicksort(arr,start,i-1);
};
void swap(int &number_a,int &number_b)
{
int index;
index = number_a;
number_a = number_b;
number_b = index;
};
C++ 快速排序
猜你喜欢
转载自blog.csdn.net/LynlinBoy/article/details/82148643
今日推荐
周排行