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

Automatic stock control system in a supermarket, Automatic Stock Control Sy...

Automatic Stock Control System in a Supermarket -  Bar codes are associated to all goods/items sold by the supermarket as a means of identification -  Every bar code is asso

Real-time systems and control, A group report with no more than three stude...

A group report with no more than three students per group is to be handed in to explain your design procedures and simulation results. Representative graphical system outputs (clea

Common tasks to accomplish - artificial intelligence, Common Tasks to Accom...

Common Tasks to Accomplish: Once you've worried about what and why you're doing "AI", what has inspired you and how you're going to approach the job, then you just start to th

Define functions with that virtual memory can be implemented, Virtual memor...

Virtual memory can be implemented with ? With Segmentation and Paging Virtual memory can be implemented.

Where time synchronization is necessary, Time synchronization is necessary ...

Time synchronization is necessary in? Time synchronization is essential in TDM.

How 2-domain name servers contain exactly same set of names, Does it makes ...

Does it makes sense for two domain name servers to contain exactly the same set of names? Why? Yes. This is very advantageous for two domain servers having similar set of names

Can we run matlab without graphics, Sometimes you may need to run scripts w...

Sometimes you may need to run scripts which have plotting commands without displaying the plots and without going into the script to comment out the commands. An example: if you're

Explain the method to identify the object classes, Explain the method to id...

Explain the method to identify the Object Classes You would always be careful while identifying relevant object classes from application domain. Objects may include physical e

List the properties which a hashing function should possess, List the prope...

List the properties which a hashing function should possess to ensure a good search performance. What approaches are adopted to handle collision? A hashing function h must poss

What do you mean by drive cache, Q. What do you mean by Drive Cache? Di...

Q. What do you mean by Drive Cache? Disk cache may be a part of RAM sometimes known as soft disk cache which is used to speed up access time on a disk. In latest technologies s

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