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

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

Risks by financial service provider perspective, What are the risks by fina...

What are the risks by financial service provider's perspective in Electronic Payment Systems? Through the financial service provider's perspective: • Stolen service or c

Determine the advantages of sixth generation computers, Determine the advan...

Determine the advantages of sixth generation computers One of the major dramatic changes in sixth generation will be the explosive growth of wide area networking. Network bandw

Why timing signal distributor required, Q. Why Timing Signal Distributor r...

Q. Why Timing Signal Distributor required? What do you mean by Memory Cycle? How many Memory Cycles required for following instructions: 1. ADD 2. CLEAR and ADD 3. DC

What does the logo mean, This comes at the complication time, If we give th...

This comes at the complication time, If we give the LOGO option to the compiler, it take a bitmap file (i.e., ) as logo previous to loading the Application.

Is the data bus is bi-directional, The data bus is Bi-directional because t...

The data bus is Bi-directional because the similar bus is used for transfer of data among Micro Processor and memory or input / output devices in both the direction.

What are the advantagesof fact finding, What are the Advantagesof fact find...

What are the Advantagesof fact finding - Analyst obtains reliable data - It's possible to see exactly what is being done -  This is an inexpensive method in comparison o

Inserting external media in the web page, Step 1: Click on the icon in the ...

Step 1: Click on the icon in the object tool bar Or Insert -> Media -> Choose the media type to be inserted Step 2: Find and select the file required (browse) Step 3: C

Describe the working of components of i-way infrastructure, Describe the wo...

Describe the working of components of I-way Infrastructure. Working of I-way Infrastructure components: a. Consumer access equipment shows a critical category, it is the abs

Reduced instruction set computer architecture, The goal of computer archite...

The goal of computer architects is to design computers that are cheaper and more powerful than their predecessors. A cheaper computer has: Low hardware manufacturing cost.

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