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 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

Show the major benefits of microprocessor, Q. Show the Major benefits of mi...

Q. Show the Major benefits of microprocessor? Microprocessor is a complete CPU on a single chip. The major benefits of microprocessor are:  Powerful butCompact; can

Principle of locality, Principle of locality: Temporal  base locali...

Principle of locality: Temporal  base locality (locality in time):- If an item is referenced then it will tend to be referenced again soon. Spatial locality (local

Segment combinations, Segment Combinations In 8086 assembler provides a...

Segment Combinations In 8086 assembler provides a means for combining segments declared in various modules. Some typical combine types are: 1.   PUBLIC: This combine directi

Which technique is an encryption technique, Which technique is an encryptio...

Which technique is an encryption technique? Ans. Block cipher technique and also Steam cipher technique is an encryption technique.

What is multiplexer, Q. What is multiplexer? Explain 4 X 1 Multiplexer.   ...

Q. What is multiplexer? Explain 4 X 1 Multiplexer.    Q. Explain the working of a Binary Half-Adder. Construct a Full-Adder from Half- Adder. Also draw the circuit diagram of full

What are the elements of an instruction, Q. What are the elements of an ins...

Q. What are the elements of an instruction? As the function of instruction is to communicate to CPU what to do it needs a minimum set of communication such as:  What op

How can common bus system be constructed, How can common bus system be cons...

How can common bus system be constructed A common bus system could be constructed using multiplexers. These multiplexers select source register whose binary information is then

Conversion of bcd number to binary using a procedure, Q. Conversion of BCD ...

Q. Conversion of BCD number to binary using a procedure? Conversion of BCD number to binary using a procedure. Algorithm for conversion procedure: Take a packed BCD digit

Mingw32 compiler, Although there are no compulsory "c" compiler for this su...

Although there are no compulsory "c" compiler for this subject, but the compiler we are going to use for this example is the Mingw32 compiler. Download the source code files fro

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