use Advanced C++ techniques, containers and features to refactor the C/C++ algorithm. The purpose is to replace appropriate declarations and code segments with Advanced C++ declarations and code. * Replace all arrays with appropriate STL containers. * Use STL algorithms to REPLACE existing logic where appropriate. * Use smart and move pointers where pointers are needed. * Use lambda expressions where appropriate. * Use C++ style casting when needed. * Look for opportunities where tuples could be used. * The code listing is in C and C++. If you don't understand some of the C code or C functions, please google. If there are logic or syntax problems, please fix. int Algorithm(int a[], int x, int y) { int p, i, j = x; p = y; for(int i=x; i < y; i++) { if(a[i] < a[p]) { swap(&a[i], &a[j]); j++; } } swap(&a[p], &a[j]); return j;
use Advanced C++ techniques, containers and features to refactor the C/C++
replace appropriate declarations and code segments with Advanced C++ declarations and code.
* Replace all arrays with appropriate STL containers.
* Use STL algorithms to REPLACE existing logic where appropriate.
* Use smart and move pointers where pointers are needed.
* Use lambda expressions where appropriate.
* Use C++ style casting when needed.
* Look for opportunities where tuples could be used.
* The code listing is in C and C++. If you don't understand some
of the C code or C functions, please google.
If there are logic or syntax problems, please fix.
int Algorithm(int a[], int x, int y)
{
int p, i, j = x;
p = y;
for(int i=x; i < y; i++)
{
if(a[i] < a[p])
{
swap(&a[i], &a[j]);
j++;
}
}
swap(&a[p], &a[j]);
return j;
}
Trending now
This is a popular solution!
Step by step
Solved in 6 steps with 2 images