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

Switch statement with the use of nested if-else statement, Compare the use ...

Compare the use of switch statement with the use of nested if-else statement. If-else statement:  When there are many conditional statements that may all evaluate to true, bu

Biscuit factory circuit, Biscuits move on a conveyer through an oven where ...

Biscuits move on a conveyer through an oven where they are cooked.   Two sensors, H and C, measure the temperature of the oven, H = 1 if the oven is too hot and C = 1 if the ove

What is random access memory, What is Random access memory (RAM) This i...

What is Random access memory (RAM) This is a volatile memory (i.e. contents are lost when computer is switched off). A user can write or delete data and read the contents. Befo

Explain what is internal modems, Q. Explain what is Internal Modems ? I...

Q. Explain what is Internal Modems ? Internal Modems: Internal Modems plug in expansion slots in your PC. Internal Modems are efficient andcheap. Internal Modems are bus-specif

Operation research, how to implement a modified distribution method using c...

how to implement a modified distribution method using c/c++

Explain about programmer visible registers, Q. Explain about Programmer Vis...

Q. Explain about Programmer Visible Registers? Programmer Visible Registers: These registers can be employed by machine or assembly language programmers to minimize reference

What is the use of the statement leave to list-processing, What is the use ...

What is the use of the statement Leave to List-processing? Leave to List-processing statement is used to make a list from a module pool.  Leave to list processing statement per

C, write a code to decode the string"i need 1000 bucks"

write a code to decode the string"i need 1000 bucks"

What do you mean by digital computer, COMPUTER ORGANIZATION & ARCHITECTURE ...

COMPUTER ORGANIZATION & ARCHITECTURE 1. What do you mean by digital computer? Explain the block diagram of a digital computer. 2. What do you mean by Difference Engine? Expl

Challenges in changing information technology, Q: Challenges and Prospects ...

Q: Challenges and Prospects in Changing Information Technology? There is no doubt that information technology has made significant progress during the past two decades. Modern

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