Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #define yes std::cout<<"YES\n";
- #define no std::cout<<"NO\n";
- typedef long long ll;
- typedef unsigned long long ull;
- int partiton(int arr[], int low, int high){
- int pivot = arr[high];
- int i = low -1, j = high;
- while(true){
- while(arr[++i] < pivot){
- if(i == high)
- break;
- }
- while(arr[--j] > pivot){
- if(j == low)
- break;
- }
- if(i>=j)
- break;
- std::swap(arr[i], arr[j]);
- }
- std::swap(arr[high],arr[i]);
- return i;
- }
- void QuickSort(int arr[], int low, int high){
- if(low < high){
- int pi = partiton(arr,low,high);
- QuickSort(arr, low, pi-1);
- QuickSort(arr, pi+1, high);
- }
- }
- int main(){
- int n, arr[10010];
- std::cin>>n;
- for(int i=0;i<n;i++){
- std::cin>>arr[i];
- }
- QuickSort(arr,0,n-1);
- for(int i=0;i<n;++i){
- std::cout<<arr[i]<<' ';
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement