Create a NON-RECURSIVE version of this function, it stores any value less than or equal to k on the left side and the rest of the numbers on the right. ***INCLUDE TIME COMPLEXITY   #include // Use the standard namespace. using namespace std; // Define the function to rearrange the elements. void rearrange(int A[], int k, int start, int end) {    // Return if the starting index is equal    // to the last index.    if (start == end)    {        return;    }    // Otherwise, do the following.    else    {        // Swap the element at A[start] with the        // element at A[end] if the value of A[start]        // is greater than k.        if (A[start] > k)        {            int temp = A[start];            A[start] = A[end];            A[end] = temp;            // Decrement the value of end by 1            // and call the function recursively.            rearrange(A, k, start, end - 1);        }        // Otherwise, increment the value of start        // by 1 and call the function recursively.        else        {            rearrange(A, k, start + 1, end);        }    } } // Define the main() function. int main() {    // Declare the required variables.    int A[] = { 100,-1, 4,3,2,0,23,34,6,7,102 };    int n = sizeof(A) / sizeof(A[0]);    int k = 20;    cout << "k = " << k << endl;    cout << "The original array is as follows:" << endl;    // Start the loop to print the original array.    for (int i = 0; i < n; i++)    {        cout << A[i] << " ";    }    // Call the function to rearrange the elements.    rearrange(A, k, 0, n - 1);    cout << endl;    cout << "\nThe modified array is as follows:" << endl;    // Start the loop to print the modified array.    for (int i = 0; i < n; i++)    {        cout << A[i] << " ";    }    // Return 0 and exit the program.    return 0; } Please give proper explanation and typed answer only.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Create a NON-RECURSIVE version of this function, it stores any value less than or equal to k on the left side and the rest of the numbers on the right.

***INCLUDE TIME COMPLEXITY

 

#include <iostream>

// Use the standard namespace.

using namespace std;

// Define the function to rearrange the elements.

void rearrange(int A[], int k, int start, int end)

{

   // Return if the starting index is equal

   // to the last index.

   if (start == end)

   {

       return;

   }

   // Otherwise, do the following.

   else

   {

       // Swap the element at A[start] with the

       // element at A[end] if the value of A[start]

       // is greater than k.

       if (A[start] > k)

       {

           int temp = A[start];

           A[start] = A[end];

           A[end] = temp;

           // Decrement the value of end by 1

           // and call the function recursively.

           rearrange(A, k, start, end - 1);

       }

       // Otherwise, increment the value of start

       // by 1 and call the function recursively.

       else

       {

           rearrange(A, k, start + 1, end);

       }

   }

}

// Define the main() function.

int main()

{

   // Declare the required variables.

   int A[] = { 100,-1, 4,3,2,0,23,34,6,7,102 };

   int n = sizeof(A) / sizeof(A[0]);

   int k = 20;

   cout << "k = " << k << endl;

   cout << "The original array is as follows:" << endl;

   // Start the loop to print the original array.

   for (int i = 0; i < n; i++)

   {

       cout << A[i] << " ";

   }

   // Call the function to rearrange the elements.

   rearrange(A, k, 0, n - 1);

   cout << endl;

   cout << "\nThe modified array is as follows:" << endl;

   // Start the loop to print the modified array.

   for (int i = 0; i < n; i++)

   {

       cout << A[i] << " ";

   }

   // Return 0 and exit the program.

   return 0;

}

Please give proper explanation and typed answer only.
Expert Solution
steps

Step by step

Solved in 4 steps with 1 images

Blurred answer
Knowledge Booster
Array
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education