Sorting Algorithms Analysis

Context

Analysis and performance comparison project for sorting algorithms in C++

Description

This project implements 8 sorting algorithms: stdsort, stable_sort, qsort, quicksortrnd, quicksortdet, bubble sort, insertion sort, and selection sort. The program generates three types of vectors (random, half sorted, half reverse sorted) and compares the performance of each algorithm. Results are visualized as graphs generated by SageMath (6 graphs: 3 for fast algorithms, 3 for slow ones). A complete scientific report in LaTeX analyzes the results.

December 2024
1 person
University Project • 14/20

Skills used

C++
LaTeX
Bash
Python

Skills

Skills used

C++
LaTeX
Bash
Python

Skills acquired

LaTeX
Python

Skills improved

C++
Bash

Features

08Features
Swipe< >
01

Implementation of 8 different sorting algorithms in C++

C++
LaTeX
02

Generation of 3 types of test vectors (random, half sorted, half reverse sorted)

LaTeX
Bash
Python
03

Automated performance measurement with .data file generation

Bash
Python
C++
LaTeX
04

Interactive Bash script with selection menu

Python
C++
05

Generation of 6 comparison graphs via SageMath

C++
LaTeX
Bash
06

Automatic organization: data/ folder for data, plots/ for graphs

LaTeX
Bash
Python
C++
07

Compilation with g++ 7.1.0+ in a build/ folder

Bash
Python
08

Complete scientific report in LaTeX with detailed analysis and integrated graphs

Python
C++
LaTeX

Gallery

Gallery

1