Sorting, Computer Engineering

Assignment Help:

Different sorting algorithm will be discussed in the lecutres. The task in this worksheet is to write a funtions based on the Quicksort algorithm.

When sorting an array of objects some objects might swap places. This can by very expensive in terms of time and space, as each swap requires to copy an object. We have seen in the previous part of the module that this could potential be computationally expensive (deep copy).
The function that you should implement takes an array of a template class as pass-by-reference. Instead of sorting this array it returns a new array of int. In this new array the first number is the index of the smallest object in the original array, the next number is the index of the 2nd smallest object in the original array and so on.
Example, for parameter ["michael", "sam", "chris", "tom", "anna", "nick"]
the function should return [4, 2, 0, 5, 1, 3]

The function declaration is

        template int * index(const T & array,int size)

Your function should be based on the quicksort algorithm. The given array of objects should not be altered. Hint: You might want to consider to write an additional function that can be recursively called.
 
A test program is provided . To compile the program you can use

#include

#include"assessment3.cpp"

#include

#include

#include

using namespace std;

int main() {

   int size = 10;

   int *data=new int[size];

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

      data[i]=rand()% 1000;

   cout << endl<<"unsorted"<

 

   for(int i=0;i

      cout<

   int * indexA = index(data,size);

   cout<

   for(int i=0;i

      cout<

   cout << endl;

   for(int i=0;i

      cout<

   cout << endl;

   delete [] data;

   delete [] indexA;

  return 0;

}


Related Discussions:- Sorting

Explain the term - integrity, Explain the term - Integrity In most c...

Explain the term - Integrity In most cases, corporate data should remain unchanged by third parties, so the system should be capable of ensuring that only authorised personn

Vector-scalar instructions- vector processing, Vector-Scalar Instructions :...

Vector-Scalar Instructions : In this type, when the combination of vector and scalar are fetched and saved in vector register. These instructions are denoted with the many function

Write a program to echo the string, Write a program to echo the string 'Hel...

Write a program to echo the string 'Hello' to the serial channel (SCI) using the protocol of baud rate 9600,8 bits , no parity and 1 stop bit  Consider the baud register as show

What is imprecise and precise exception, What is imprecise and precise exce...

What is imprecise and precise exception? Situation in which one or more of the succeeding instructions have been implemented to completion is known as imprecise exception. Situ

Explain about bus of register transfer, Explain about Bus of register trans...

Explain about Bus of register transfer Since a computer has   several registers, paths must be provided to transfer information among registors. If separate lines are used amon

Face detection, i want the matlab code for the following events 1. face det...

i want the matlab code for the following events 1. face detection 2. video to frame conversion 3.video shot boundary detection

Reading decision trees, Reading Decision Trees: However we can justifi...

Reading Decision Trees: However we can justified by see that a link between decision tree representations and logical representations that can be exploited to make it easier t

Develop a regular expression for real number and identifier, Develop a regu...

Develop a regular expression for Real number with optional fraction and Identifier. (i) A regular expression for real number with optional fraction is [+ | -] (d) +. (d)* (i

What is meant by super scalar processor, What is meant by super scalar proc...

What is meant by super scalar processor?  Super scalar processors are designed to exploit more instruction level parallelism in user programs. This means that multiple function

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd