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

What is redundant array of independent disks, What is Redundant Array of In...

What is Redundant Array of Independent Disks? Researchers are constantly trying to improve secondary storage media by raising their, performance, capacity as well as reliabilit

Difference between shadow and override in programming, Overriding tell us o...

Overriding tell us only the methods, but shadowing tells us the entire element.

Explain the typical organization of a computer, Q. Explain the typical orga...

Q. Explain the typical organization of a computer? There are two principal components: hardware and software. The former refers to physical components such as memory unit (MU),

Extract datasets can be used without any kind of errors, The LOOP-ENDLOOP o...

The LOOP-ENDLOOP on extract datasets can be used without any kind of errors False.  It causes runtime errors.

Virtual memory - computer architecture, Virtual memory: Virtual memory...

Virtual memory: Virtual memory is a technique which realized an application program the idea that it has contiguous working memory (an address space), whereas in fact it may b

Data dependency, Data Dependency:   It refers to the state in which two or ...

Data Dependency:   It refers to the state in which two or more instructions split same data. The instructions in a program can be given based on the relationship of data dependency

Two properties of recursion, Two properties of recursion are:- 1. A sm...

Two properties of recursion are:- 1. A smallest, base case that is processed without recursion and acts as decision criterion for stopping the method of computation and 2.

Collective communications - broadcast, Q. Collective Communications - Broad...

Q. Collective Communications - Broadcast? Broadcast: Broadcasting can be done in two ways one of them is one to all and another one is all to all. In the matter of one to all b

Determine the factor consider when selecting digital encoder, 1. What facto...

1. What factors should be considered when selecting a digital encoder (line codes)? Briefly mention five of those factors. Use sketches and additional text to describe the followin

#title., REPRESENTATION OF POYNOMIAL OF 2 OR MORE VARIABLES USING ARRAY

REPRESENTATION OF POYNOMIAL OF 2 OR MORE VARIABLES USING ARRAY

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