#include <stdio.h> #include <iostream> #include <vector> #include <stack> #include <algorithm> #include <string> using namespace std; int partition(vector<int>&arr, int l, int r) { int pivot = arr[r]; int k = l; for (int i = l; i < r; ++i) { if (arr[i] < pivot) swap(arr[i], arr[k++]); } swap(arr[k], arr[r]); return k; } void quickSort(vector<int>&arr, int l, int r) { if (l >= r) return; int k = partition(arr, l, r); quickSort(arr, l, k - 1); quickSort(arr, k + 1, r); } int main() { vector<int> input = { 4, 5, 1, 6, 2, 7, 3, 8 }; quickSort(input, 0,input.size() - 1); return 0; }