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

Which one is an error reporting protocol, Which one is an error reporting p...

Which one is an error reporting protocol? An error reporting protocol is ICMP.

Define digital computers system, Q. Define Digital computers system? Di...

Q. Define Digital computers system? Digital computers, in general, are automatic machines that accept data and instructions, perform predefined operations very quickly on the d

Object orientation and uml, In this task you are supposed to create three U...

In this task you are supposed to create three UML diagrams. The conditions are given by the scenario in the document Theatre Case (on Blackboard). A theatre manager has ordered a s

Design 4 to 1 multiplexer with strobe input using nand gates, Design a 4 : ...

Design a 4 : 1 multiplexer with strobe input using NAND gates. Ans. Design of 4 : 1 multiplexer with strobe input using NAND gates.

Responsibilities of application layer, Application layer: It's the topmost...

Application layer: It's the topmost layer in OSI model, which allows the user to access network. This layer provides user interface for network applications like remote login, Wor

Cache-only memory access model (coma), Cache-Only Memory Access Model (COMA...

Cache-Only Memory Access Model (COMA) As we have discussed previous, shared memory multiprocessor systems may use cache memories with each processor for deducting the execution

Unification, Unification: As just above this we have said that the rul...

Unification: As just above this we have said that the rules of inference for propositional logic detailed in the last lecture can also be required in first-order logic. Moreov

IEEE802, 1. (a) Given a baseband bus with station 1 located at 10m, station...

1. (a) Given a baseband bus with station 1 located at 10m, station 2 located at 1000m, and station 3 located at 1010 meters (see diagram above). If the data rate of the bus is 10 M

System software, what can be the good projects for system software subject

what can be the good projects for system software subject

What is write-back or copy-back protocol, What is write-back or copy-back p...

What is write-back or copy-back protocol? For a write operation using this protocol during write-hit: the method is to update only the cache and to mark it as updated with an a

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