This is an Experiment between Merge Sort, Selection Sort, Shell Sort and Insertion Sort, to find out which one of them is the most effective.
Input arrays will have the sizes of 2^7, 2^8, 2^9, 2^10, 2^11, 2^12, 2^13, 2^14, 2^15.
There will be 4 Experiments:
- Randomly Generated Array with elements ranging from 0 to 1000 (ints). -> Average time and comparisons for each Algo.
- Sorted Array.
- Inversely Sorted Array.
- Array with elements being only 1, 2 and 3.
- src directory stores all the source code(Algorithms, testing code, analisys code and Matplotlib plot code).
- data has all the json output data of the experiment.
- img has all the Matplotlib plot images.
- docs has a complete Analisys document, written in Ukrainian.
Clone it and run the source files from src directory!
! test_algos.py runs about 20-25 minutes - you will see the progress.
If you want to change something, the code documentation should be enough to exaplain everything.
- Fork the repository
- Make your change in your forked repository
- Make a pull request and add me as a rewiever.