This project compares the speed of different algorithms. It does so by running many tests and recording the time spent. Using this information, I have presented the information in graphs, which help to understand the information more easily.
This project is completed as a part of my second year bachelor's course "Applications and Analysis of Algorithms" at HSE university, Moscow.
Dzhalev Pavel Dobrev
Course: ПиАА 2022
Group: БПИ208
Stack: C++, Cmake, Google tests, Clion, Google spreadsheets
This repository contains more than just the code used for this project. There are also reports, tests, and other data divided as such:
- Source code
- Results - this is just a placeholder folder for the results of the program and tests
- Data - a folder containing results used for the diagrams
- Diagrams - folder containing the resulting diagrams
- ✅ Implement algorithms:
- Bubble sort
- Count sort
- Insertion sort
- Merge sort
- Quick sort
- Selection sort
- ✅ All algorithms sort the same data
- ✅ Times recorded
- ✅ Project structure
- ✅ Proper random generation
- ✅ Export to CSV
- ✅ Tables and diagrams of results
- Included title and legend
- ✅ Code documentation
- ✅ Function pointers
- ✅ Result analysis
- ❌ Memory cleanup is all automatic
The results of this experiment are divided in two parts:
- The data files from each different collection of items
- The resulting tables and charts charts
The complete analysis of the project can be found here.