Quick Sort in C++
#include <iostream> | |
void printArray(int *array, int n) | |
{ | |
for (int i = 0; i < n; ++i) | |
std::cout << array[i] << std::endl; | |
} | |
void quickSort(int *array, int low, int high) | |
{ | |
int i = low; | |
int j = high; | |
int pivot = array[(i + j) / 2]; | |
int temp; | |
while (i <= j) | |
{ | |
while (array[i] < pivot) | |
i++; | |
while (array[j] > pivot) | |
j--; | |
if (i <= j) | |
{ | |
temp = array[i]; | |
array[i] = array[j]; | |
array[j] = temp; | |
i++; | |
j--; | |
} | |
} | |
if (j > low) | |
quickSort(array, low, j); | |
if (i < high) | |
quickSort(array, i, high); | |
} | |
int main() | |
{ | |
int array[] = {95, 45, 48, 98, 1, 485, 65, 478, 1, 2325}; | |
int n = sizeof(array)/sizeof(array[0]); | |
std::cout << "Before Quick Sort :" << std::endl; | |
printArray(array, n); | |
quickSort(array, 0, n); | |
std::cout << "After Quick Sort :" << std::endl; | |
printArray(array, n); | |
return (0); | |
} |
This comment has been minimized.
This comment has been minimized.
thank you very much |
This comment has been minimized.
This comment has been minimized.
Thanks |
This comment has been minimized.
This comment has been minimized.
Nice code, bro |
This comment has been minimized.
This comment has been minimized.
Thanks a lot.... |
This comment has been minimized.
This comment has been minimized.
Thx, u are the best |
This comment has been minimized.
This comment has been minimized.
int array[] = {0, 0}; |
This comment has been minimized.
This comment has been minimized.
|
This comment has been minimized.
This comment has been minimized.
quickSort(array, 0, n-1); high must be n-1. |
This comment has been minimized.
This comment has been minimized.
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
how can i make it full quick sort ?