Question 3 - Quick Sort
itsLu
c_cpp
2 years ago
959 B
39
Indexable
/* 3. Write a function to sort numbers
in an array using quick sort algorithm. */
#include <iostream>
using namespace std;
void quick_sort (int arr[], int l, int r)
{
if (l < r)
{
int pivot = arr[l], leftcounter = l + 1, rightcounter = r, temp;
while (leftcounter <= rightcounter)
{
while (arr[leftcounter] <= pivot && leftcounter <= r)
leftcounter++;
while (arr[rightcounter] > pivot && rightcounter > l)
rightcounter--;
if (leftcounter < rightcounter)
{
temp = arr[rightcounter];
arr[rightcounter] = arr[leftcounter];
arr[leftcounter] = temp;
}
}
temp = arr[l];
arr[l] = arr[rightcounter];
arr[rightcounter] = temp;
quick_sort(arr, l, rightcounter - 1);
quick_sort(arr, rightcounter + 1, r);
}
}Editor is loading...
Leave a Comment