This repository contains the codes developed in the course "Algorithmic Design" of the master course in Data Science and Scientific Computing at the University of Trieste.
The folder Homeworks contains all the homeworks solved.
The folder 01_Strassen_alg contains some code to simplify the implementation and the testing of the Strassen's algorithm for matrix multiplication.
The folder 02_Strassen_alg_rect contains some code to simplify the implementation and the testing of the Strassen's algorithm for rectangular matrix multiplication.
The folder 03_Binary_heaps contains a simple array-implementation of binary heaps in the C-programming language.
The folder 04_Binary_heaps_noswap contains a simple array-implementation of binary heaps in the C-programming language that doesn't swaps the elements of the array, so to be more efficient, but uses two arrays to keep track of the position of the nodes in the heap and in the array.
The folder 05_Sorting contains the implementation and testing of sorting algorithms. The algorithms implemented are: insertion sort, quick sort (with and without the select algorithm to identify the pivot), bubble sort, selection sort, and heap sort.
The folder 06_Dijkstra contains the implementation and testing of Dijkstra's algorithm.