Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Computer Engineering Expert

As a new and eager employee of Google Tech; you've been asked by your employer to implement a sorting algorithm for inclusion in a package for a lucrative client. However, your boss just wants you to implement one of the simple, quadratic sorting algorithms. To prove that this would be a big mistake, you've decided (on your own) to prove to your idiot boss that it's worth the extra effort to implement one of the O(n log n) sorting algorithms. For this project, you will implement and compare five sorting algorithms:

bubble sort, insertion sort, selection sort, quicksort, and either mergesort or shellsort. Your main program will then do the following:

1. Ask the user for the size n of the list he/she wants to sort.

2. Create an array of size n and fill it with random integers between 1 and n. If n<=100, display the random array on the screen.

3. Run each of your sorts on this array. You must make a deep copy of the array before sorting it, or your second sort will have an easy time of it. Use the System.currentTimeMillis() function to determine the running time of each sort.

4. If n<=100, display the sorted arrays on the screen (they better be the same!).

5. Display the time each sort used to sort the array. Once you have your program working, use it to plot a graph. Have the x-axis represent n, and the y-axis the running time. Use n=10000, 20000, ..., 100000. Plot all sorting algorithms on the same graph (use different colors or line styles). You shall use a spreadsheet program (e.g., MS Excel) or some other program to do this for you. (Will your boss be convinced?)

1. Before you begin programming, sketch a high level design of what you want to implement using the UML notation. At the very least, you should have a use case diagram, class diagram and a sequence diagram.

2. Remember to include comments at the top of your program and 1-2 lines for each function (including pre- and post-conditions).

3. The System.currentTimeMillis() function will return the current system time in milliseconds. Make a call before and after running a sort, then subtract to get the elapsed time. You may need to cast it to type int using (int) System.currentTimeMillis().

4. Use the compareTo() function of the built-in Comparable interface to compare objects in the array, and store your numbers using the built-in Integer wrapper class.

5. Use a random number generator to fill the array.

6. Hint: Use the sample Sorts.java file from the textbook. (provided)

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M91605365

Have any Question?


Related Questions in Computer Engineering

Question a add a navigation form to your applicationa

Question: A) Add a Navigation form to your application. A navigation form makes it easy for users to switch between the various forms and reports in your database. Navigation forms are a great addition to any desktop dat ...

Determine the mass of the water by using the waters density

Determine the mass of the water by using the water's density (specific to the initial temperature) and the volume of the water. Remember,  density = mass/volume . You can look up the density of the water at your specific ...

Meannbsp3290 milesstandard deviation ofnbsp384 mileswhat is

Mean 3290 miles Standard Deviation of 384 miles What is the probability that the mean of a sample of 33 cars would be less than 3160 miles?

Task create an array that holds a 20 random integers

Task : Create an Array that holds a 20 random integers between 1-50. Create an iterator that will return the memory address and value for each integer present in the Array.

Discuss the importance of metadata and some of the various

Discuss the importance of metadata and some of the various ways (Microsoft) SQL Server allows you to expose that information. References welcomed to learn where to find obscure IT information (books, articles, websites)

Question suppose we have 29 bytes of virtual memory and 27

Question : Suppose we have 29 bytes of virtual memory and 27 bytes of physical main memory. Suppose the page size is 23 bytes. (a) How many pages are there in virtual memory? (b) How many page frames are there in main me ...

Please respondexplain the properties and characteristics of

PLEASE RESPOND Explain the properties and characteristics of Transmission Control Protocol/Internet Protocol (TCP/IP).

In class i described the methods used to create gas and

In class, I described the methods used to create gas and gasoline from the carbon in coal. The other ingredients were water and heat energy. First we made 'coal gas' from the carbon in coal  C + H2O → H2 + CO  Then we us ...

Question suppose that in n a particular implementation of

Question : Suppose that in n a particular implementation of the MIPS single-cycle design, the lw instruction takes the longest amount of physical time to execute at 3.5 ns. What would be the theoretical maximum clock rat ...

Anova labyou are interested in studying the neurological

ANOVA Lab You are interested in studying the neurological effects of dehydrogenated brominate oil, a food additive.  You randomly select 25 Sprague-Dawley rats and add a dosage to their drinking water. Because the additi ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As