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

Briefly explain about ask, Question 1 What is modulation? Explain why i...

Question 1 What is modulation? Explain why is modulation required? 2 Briefly explain about ASK, FSK and PSK 3 Explain about the Nyquist Bandwidth and Nyquist Theorem 4

Explain classification based on grain size, Explain Classification Based On...

Explain Classification Based On Grain Size This categorization is based on distinguishing the parallelism in a program to be executed on a multiprocessor system. The concept is

How music is produced and generated - cad, How music is produced and genera...

How music is produced and generated - CAD Computer software and hardware advances have changed how music is produced and generated. Some of the primary reasons for this have

Prove the equations using the boolean algebraic theorems, Prove the equatio...

Prove the equations A + A‾ .B + A.B‾ = A + B using the Boolean algebraic theorems ? Ans. The equation is A + A‾.B + A.B‾ = A + B L.H.S. = A + A‾ .B + A.B‾ = (A + A.B‾) + A‾.B

Differentiate between intranet and internet, Differentiate between intranet...

Differentiate between intranet and internet Some comparisons between intranet and internet include: -  INTERNET is INTERnational NETwork -  An INTRANET is INTernal Restri

Data manipulation is essential, Based on the variables, construct a design ...

Based on the variables, construct a design that haves only main effects of one categorical IV and at least 2 continuous DVs. Discuss what you think the relationship is among the de

List the key notions concerning macro expansion, List the key notions conce...

List the key notions concerning macro expansion. Two key notions relating to macro expansion is: 1. Expansion time control flow- Determines the order of model statements tha

Define functions with that virtual memory can be implemented, Virtual memor...

Virtual memory can be implemented with ? With Segmentation and Paging Virtual memory can be implemented.

Characteristics of decision support system, Q. Characteristics of decision ...

Q. Characteristics of decision support system? Characteristics of DSS- The qualities of the DSS are as follows: - 1. DSS focus on towards providing assistance in analyzing s

Does xml replace html, No XML does not replace HTML. Instead, it gives an a...

No XML does not replace HTML. Instead, it gives an alternative which permits you to explain your own set of markup elements. HTML is expected to stay in common use for some time to

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