Subject: Data Strucure and Algorithm in C++ Please fill in the blank fields in the table in the image only Question: The following program is a Quick Sort function which consists of two functions:...



Subject: Data Strucure and Algorithm in C++



Please fill in the blank fields in the table in the image only



Question:
The following program is a Quick Sort function which consists of two functions:quicksort()andpartition() .


Code:



// Quick Sort function
int partition(int T[], int first,int last)
{ int pivot, temp;
int loop, cutPoint, bottom, top;
pivot= T[0];

bottom=first; top= last;
loop=1;    //always TRUE
while (loop) {
while (T[top]>pivot)
{   top--;          }
while(T[bottom]<>
{  bottom++;       }
    if (bottom
   temp=T[bottom];
   T[bottom]=T[top];
   T[top]=temp;
    }

    else {
   loop=0;
   cutPoint = top;
    }
}//end while
return cutPoint;
}
void quickSort(dataType arrayT[],int first,int last)
{
int cut;
if (first<>
cut = partition(T,first,last);
quickSort(T, first,cut);
quickSort (T, cut+1, last);
}
}


Based on the array named T in the figure below, write the Quick sort partition work trace for cut = partition(T,0,4) until the first cut point by using the item at first index as pivot. In the diagram given, show the following:
i)   The movement of bottom and top.
ii)  The swapping process.
iii) The cutPoint and the new 2 parts array for the next recursive call.



[0]<br>[1]<br>[2]<br>[3]<br>[4]<br>9<br>7<br>10<br>5<br>Fill in the blanks to show the work trace for cut = partition(T,0,4).<br>Current value of bottom and top<br>bottom =<br>top =<br>pivot =<br>Array index<br>[0]<br>[1]<br>[2]<br>[3]<br>[4]<br>Array item<br>Current value of bottom and top<br>bottom =<br>top =<br>Array index<br>Array item<br>[0]<br>[1]<br>[2]<br>[3]<br>[4]<br>Current value of bottom and top<br>bottom =<br>top =<br>cutPoint =<br>Recursive function and array value after cutpoint is returned.<br>quickSort(T,<br>quickSort(T,<br>LO<br>

Extracted text: [0] [1] [2] [3] [4] 9 7 10 5 Fill in the blanks to show the work trace for cut = partition(T,0,4). Current value of bottom and top bottom = top = pivot = Array index [0] [1] [2] [3] [4] Array item Current value of bottom and top bottom = top = Array index Array item [0] [1] [2] [3] [4] Current value of bottom and top bottom = top = cutPoint = Recursive function and array value after cutpoint is returned. quickSort(T, quickSort(T, LO
Jun 11, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here