Your Perfect Assignment is Just a Click Away

We Write Custom Academic Papers

100% Original, Plagiarism Free, Customized to your instructions!

glass
pen
clip
papers
heaphones

AIT 512 George Mason University Selection Sort Java Project

AIT 512 George Mason University Selection Sort Java Project

Description

Task 1: Create and test an utility class ArrayUtility containing various utility methods for arrays.

  • 11. Create a package “hw” (under src folder), if not already created. Create a sub-package “a031” under the package hw. In this sub-package (a031), create a public class named ArrayUtility and a public class named ArrayUtilityTest.
  • 12a. In ArrayUtility class, create a public static method toString that receives an array of int’s, a start string, a separator string and an end string. It returns a String starting with the start string, followed by the array elements separated by the separator and ending with the end string.
  • 12b. In ArrayUtilityTest class, create a public static method toStringTest that prints the results for the following 5 lengths of arrays, using different types of brackets and separators for each: empty, singleton, two elements, 5 elements and 20 elements. Call only this class in the main method and check the results. 
  • 13a. In ArrayUtility class, create a public static method equals that receives two arrays of int’s and returns true if they have the same length and equal corresponding elements.
  • 13b. In ArrayUtilityTest class, create a public static method equalsTest that prints the results for the following 6 cases: two empty arrays, one empty and one singleton, two singleton with the same element, two singleton with different elements, two arrays with two identical elements, two arrays with two different elements. Call only this class in the main method and check the results. 
  • 14. In ArrayUtility and ArrayUtilityTest, design, implement and test a method named isSorted that checks if an array of int-s is already sorted, i.e. all the elements are in increasing order.
  • 15. In ArrayUtility and ArrayUtilityTest, design, implement and test a method named generateIntArray that generates a random array with the provided length having elements randomly generated between a minimum and maximum value, including those values

Task 2: Create a sorting class named SelectionSort containing various versions of selection sort algorithm.

  • 21. In the package a031, create a public class named SelectionSort, and a public class named SelectionSortTest.
  • 22. In the SelectionSort class, design and implement the selection sort method for an array of int-s, without calling other methods for performing operations (in-line all the code).
  • 23. In the SelectionSortTest, call the selection sort for some random arrays with length 0, 1, 2, 5 and 10. Check that they are sorted correctly (print them before and after).

Task 3: Create a class SelectionSortAnalysis containing time analysis methods.

  • 31. In the a031 package, create a public class named SelectionSortAnalysis
  • 32. In the class SelectionSortAnalysis, create two methods meanTime, and printMeanExecutionTimeGrowthTable, similar with the methods developed for sum.

Task 4: Analyze the execution time and memory needs for the selection sort. 

  • 41. Explain in your own words which is the order of growth for the selection sort method.
  • 42. Compute the growth table for some large arrays (at least 10 values for their length, with some large increment between them), draw a graph for the values.
  • 43. Explain if the graph confirms or not the theoretical order of growth above.
  • 44. Analyze the memory needs for the selection sort method. Are they relevant? Why?

Order Solution Now

Our Service Charter

1. Professional & Expert Writers: School Assignment only hires the best. Our writers are specially selected and recruited, after which they undergo further training to perfect their skills for specialization purposes. Moreover, our writers are holders of masters and Ph.D. degrees. They have impressive academic records, besides being native English speakers.

2. Top Quality Papers: Our customers are always guaranteed papers that exceed their expectations. All our writers have +5 years of experience. This implies that all papers are written by individuals who are experts in their fields. In addition, the quality team reviews all the papers before sending them to the customers.

3. Plagiarism-Free Papers: All papers provided by School Assignment are written from scratch. Appropriate referencing and citation of key information are followed. Plagiarism checkers are used by the Quality assurance team and our editors just to double-check that there are no instances of plagiarism.

4. Timely Delivery: Time wasted is equivalent to a failed dedication and commitment. School Assignment is known for timely delivery of any pending customer orders. Customers are well informed of the progress of their papers to ensure they keep track of what the writer is providing before the final draft is sent for grading.

5. Affordable Prices: Our prices are fairly structured to fit all groups. Any customer willing to place their assignments with us can do so at very affordable prices. In addition, our customers enjoy regular discounts and bonuses.

6. 24/7 Customer Support: At School Assignment, we have put in place a team of experts who answer all customer inquiries promptly. The best part is the ever-availability of the team. Customers can make inquiries anytime.