Quick Sort In Data Structure Using C++

Data Structure Using C++

Array Data Structure

Sorting

Quick Sort

void swap(int* a, int* b) 
{ 
    int t = *a; 
    *a = *b; 
    *b = t; 
} 
int partition (int arr[], int low, int high) 
{ 
    int pivot = arr[high];
    int i = (low-1);
  cout<<i<<endl;
    for (int j = low; j <= high- 1; j++) 
    { 
        if (arr[j] <= pivot) 
        { 
            i++;
            swap(&arr[i], &arr[j]); 
        } 
    } 
    swap(&arr[i + 1], &arr[high]); 
    return (i + 1); 
} 
void quickSort(int arr[], int low, int high) 
{ 
    if (low < high) 
    { 
        int pi = partition(arr, low, high);
        quickSort(arr, low, pi - 1); 
        quickSort(arr, pi + 1, high); 
    } 
}
int main(){
 int arr[]={12,11,13,5,6,4,10,3,14,2};
 int n=sizeof(arr)/sizeof(arr[0]); 
 quickSort(arr,0,n-1);
 for(int i=0;i<n;i++){
  cout<<arr[i]<<"\t";
 }
}

Let me know in the comment section if you have any question.

Previous Post:
Merge Sort In Data Structure Using C++


Comments