File tree Expand file tree Collapse file tree 1 file changed +57
-0
lines changed Expand file tree Collapse file tree 1 file changed +57
-0
lines changed Original file line number Diff line number Diff line change 1+ #include < iostream>
2+ using namespace std ;
3+ void swap (int *a, int *b)
4+ {
5+ int temp = *a;
6+ *a = *b;
7+ *b = temp;
8+ return ;
9+ }
10+ int partition (int arr[], int start, int end)
11+ {
12+ int pivot = arr[end];
13+ int i = start - 1 ;
14+ for (int j = start; j < end; j++)
15+ {
16+ if (arr[j] <= pivot)
17+ {
18+ i++;
19+ swap (arr[i], arr[j]);
20+ }
21+ }
22+ i++;
23+ swap (arr[i], arr[end]);
24+ return i;
25+ }
26+
27+ void quickSort (int arr[], int start, int end)
28+ {
29+ if (start < end)
30+ {
31+ int part = partition (arr, start, end);
32+ quickSort (arr, start, part - 1 );
33+ quickSort (arr, part + 1 , end);
34+ }
35+ }
36+
37+ int main ()
38+ {
39+ int size;
40+ cout << " Enter size: " ;
41+ cin >> size;
42+ int arr[size];
43+ cout << " Enter array: " ;
44+ for (int i = 0 ; i < size; i++)
45+ {
46+ cin >> arr[i];
47+ }
48+
49+ quickSort (arr, 0 , size - 1 );
50+
51+ cout << " Sorted array is: " ;
52+ for (int i = 0 ; i < size; i++)
53+ {
54+ cout << arr[i] << " " ;
55+ }
56+ cout << endl;
57+ }
You can’t perform that action at this time.
0 commit comments