Skip to content

Commit 0ee77e9

Browse files
Merge pull request #168 from kumaratul2002/main
hacktoberfest-2022
2 parents 3cee0f4 + a5663c1 commit 0ee77e9

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed

quickSort_Last_Pivot.cpp

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
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+
}

0 commit comments

Comments
 (0)