Quick Sort Recursive Function The function quick_sort sorts an array of integers recursively. Translate this function into MIPS code. Write a read_array function that asks the user to input the number of elements n (must be greater than 1), allocates an array of n integers dynamically on the heap, reads n integers and stores them in the array, and returns the address of the allocated array and the number of elements in $v0 and $v1, respectively. Write a function print_array that prints an array of n integers. Write a main function that calls the functions read_array, print_array (before sorting), quick_sort, and print_array (again after sorting). Test your program by entering different arrays and check if sorting works properly. void quick_sort(int array[], int n) { int i = 0; int j = -1; int pivot = array[(i+j)/2]; while (i <= j) { while (array[i]< pivot) i++; while (array[j] > pivot) j--; if (i <= j) { } int temp array[i]; array[i] = array[j]; array[j] temp; = i++; j--; // i = low index //j high index // pivot = middle value // swap array[i] // with array[j] } if (j> 0) quick_sort(&array[0], j+1); if (i < n-1) quick_sort (&array[i], n-i); } } void print_array (int array[], int n) { // Display the n elements of array[] } // Recursive call 1 // Recursive call 2 (int array[], int n) read_array() { // Ask the user to enter n and allocate the array dynamically // Ask the user to input n elements of type int // The user input should be stored in array[] // Return the address of the array[] in $ve and return n in $v1

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

Answer the given question with a proper explanation and step-by-step solution.

 solve using mips assembly language on MARS MIPS simulator. 

Quick Sort Recursive Function
The function quick_sort sorts an array of integers recursively. Translate this function into MIPS
code. Write a read_array function that asks the user to input the number of elements n (must be
greater than 1), allocates an array of n integers dynamically on the heap, reads n integers and stores
them in the array, and returns the address of the allocated array and the number of elements in $v0
and $v1, respectively. Write a function print_array that prints an array of n integers. Write a main
function that calls the functions read_array, print_array (before sorting), quick_sort, and
print_array (again after sorting). Test your program by entering different arrays and check if
sorting works properly.
void quick_sort(int array[], int n) {
int i = 0;
int j = -1;
int pivot = array[(i+j)/2];
while (i <= j) {
while (array[i]< pivot) i++;
while (array[j] > pivot) j--;
if (i <= j) {
}
int temp = array[i];
=
array[i] array[j];
array[j] temp;
i++;
j--;
// i low index
//j high index
=
// pivot = middle value
// swap array[i]
// with array[j]
}
if (j > 0) quick_sort (&array[0], j+1);
if (i < n-1) quick_sort(&array[i], n-i);
}
}
void print_array (int array[], int n) {
// Display the n elements of array[]
}
// Recursive call 1
// Recursive call 2
(int array[], int n) read_array () {
// Ask the user to enter n and allocate the array dynamically
// Ask the user to input n elements of type int
// The user input should be stored in array[]
// Return the address of the array[] in $ve and return n in $v1
Transcribed Image Text:Quick Sort Recursive Function The function quick_sort sorts an array of integers recursively. Translate this function into MIPS code. Write a read_array function that asks the user to input the number of elements n (must be greater than 1), allocates an array of n integers dynamically on the heap, reads n integers and stores them in the array, and returns the address of the allocated array and the number of elements in $v0 and $v1, respectively. Write a function print_array that prints an array of n integers. Write a main function that calls the functions read_array, print_array (before sorting), quick_sort, and print_array (again after sorting). Test your program by entering different arrays and check if sorting works properly. void quick_sort(int array[], int n) { int i = 0; int j = -1; int pivot = array[(i+j)/2]; while (i <= j) { while (array[i]< pivot) i++; while (array[j] > pivot) j--; if (i <= j) { } int temp = array[i]; = array[i] array[j]; array[j] temp; i++; j--; // i low index //j high index = // pivot = middle value // swap array[i] // with array[j] } if (j > 0) quick_sort (&array[0], j+1); if (i < n-1) quick_sort(&array[i], n-i); } } void print_array (int array[], int n) { // Display the n elements of array[] } // Recursive call 1 // Recursive call 2 (int array[], int n) read_array () { // Ask the user to enter n and allocate the array dynamically // Ask the user to input n elements of type int // The user input should be stored in array[] // Return the address of the array[] in $ve and return n in $v1
Expert Solution
steps

Step by step

Solved in 3 steps with 5 images

Blurred answer
Knowledge Booster
Fundamentals of Multithreaded Algorithms
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