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

Should validation occur server-side or client-side, Should validation (did ...

Should validation (did the user enter a real date) occur server-side or client-side? Why? Validation will be done in both sides i.e., at the server side and client side. Ser

What is page-stealer process, What is Page-Stealer process? This is the...

What is Page-Stealer process? This is the Kernel process that makes rooms for the incoming pages, by swapping the memory pages that are not the part of the working set of a pro

What is the function of an ip packet screening router, Function of an IP Pa...

Function of an IP Packet Screening Router: A screening router is the most basic type of firewall and uses only the packet filtering capability to control and monitor network tr

Explain simplifying the sop boolean expression using k-map, Explain Simplif...

Explain Simplifying the SOP f the Boolean expression using the K-Map? To simplify the SOP of the Boolean expression using the K map, first identify all the input combinations tha

Explain the term- intranet, Explain the term- Intranets Various compani...

Explain the term- Intranets Various companies use intranets as well as the internet. Simple definition is "An intranet is a computer network which is based on internet technolo

Explain what is a transaction in sap terminology, Explain what is a transac...

Explain what is a transaction in SAP terminology. In SAP terminology, a transaction is series of logically linked dialog steps.

Explain chaining method, Chaining: In this method, instead of hashing func...

Chaining: In this method, instead of hashing function value as location we use it as an index into an array of pointers. Every pointer access a chain that holds the element having

Define the unified modelling language, Define the Unified Modelling Languag...

Define the Unified Modelling Language  (UML) is used to express construct and relationships of complex systems. This was created in response to a request for proposal (RFP) fro

Planning too much up front a mistake in an oosad, You can't plan only for t...

You can't plan only for the present phase of the project as your future activities are still coarse granular. To have good planning you require to have fine granularity w.r.t the t

Difference between aggregation and association, Difference between aggregat...

Difference between aggregation and association Aggregation is a particular form of association, not an independent concept. Aggregation acts semantic connotations. If two objec

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