/analysis-of-sorting-algorithms

This project enables you to conduct run-time tests on popular sorting algorithms.

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

Analysis of Popular Sorting Algorithms

Sorting is an important and popular problem of computer science or more specifically algorithm analysis. There are numerous sorting algorithm developed so far. Each sort data using different ingenous techniques. The ones in which this projects is interested are as follow:

Simple Sorting Algorithms

  • Bubble Sort
  • Selection Sort
  • Insertion Sort

Recursive Sorting Algorithms

  • Merge Sort
  • Quick Sort
  • Bubble Sort

Sorting algorithms are amongs best candidates for one to improve his or her algorithmic capabilities.

This project give you the chanse to observe many popular sorting algorithm. Moreover, you can conduct run-time tests on these algorithms for three different cases: best, average, and worst.

The project first produces large amount of data for tests for each case. You must do for the first time. Then, the project allows you to run the algorithms on the data as many as you want.

To run the project, you need to use ApplyTest class. In the class are attributes to set the sizes of data for test and the number of repetitions.

Test data is produced and manages by TestData class. The class allows you to produce and use data up to 1000000.

The static array TEST_SIZES includes the test sizes. You can produces data in different size by change this array. The project uses this array to get the active test's data size. Therefore, ApplyTest classes has two integer attributes (start and finish) specifing test range depending on the TestData.TEST_SIZES array.