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

Convert statement into conjunctive normal form , Consider the following sta...

Consider the following statements about the types of fruit people like. If people like apples, then they do not like oranges. If people do not like apples, then they like orang

State the term- use a define function, State the term- Use a define functio...

State the term- Use a define function This is almost exactly the same approach as #define and -D compiler arg that C programs use. In your  Verilog  code,  use  a  'define  to

Perform the subtraction using 1's complement, Perform the subtraction using...

Perform the subtraction using 1's complement of 11001 - 10110 Ans. 11001 - 10110 = X - Y                            X = 11001 1's complement of Y = 01001

Why isdn handles data pertaining, ISDN handles data pertaining to? ISDN...

ISDN handles data pertaining to? ISDN handles data pertaining to all digital services.

How would you kill a process, How would you kill a process? The "kill" ...

How would you kill a process? The "kill" command takes the PID as one argument; this signifies which process to terminate. The PID of a process can be got using "ps" command

Define a B- tree of order m, Define a B tree of order m. B Tree of orde...

Define a B tree of order m. B Tree of order m  A balanced multiway search tree of order m in which every non root node having at least m/2 keys is known as a B-Tree of order

Function of host to host transport layer in tcp/ip protocol, Illustrate the...

Illustrate the function of host to host transport layer in TCP/IP protocol stack? Function of Host - to-Host Transport Layer: This protocol layer just above inter network

Why does ftp use two standard ports, Why does FTP use two standard ports wh...

Why does FTP use two standard ports whereas other protocols, in general use only one port? Justify. File transfer protocol uses a control connection just to send commands and r

Difference between depth first and breadth first traversing, Explain the di...

Explain the difference between depth first and breadth first traversing techniques of a graph.   Depth-first search is dissimilar from Breadth-first search in the following way

How u can create xml file, How u can create XML file? To write Dataset ...

How u can create XML file? To write Dataset Contents out to disk as an XML file use: MyDataset.WriteXML(server.MapPath("MyXMLFile.xml"))

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