The topic of this project is to create a C++ class representing Sparse Matrix, which stores only non-zero values in memory with their location in the matrix itself. This class supports operations of addition, substraction, multiplication and transposition. Why even make a Sparse Matrix class? Well, because it is computationally expensive to represent and work with sparse matrices as though they are dense, and much improvement in performance can be achieved by using representations and operations that specifically handle the matrix sparsity. You can see in the example below that only 12 out of the 63 fields in the matrix are non-zero values, that is where Sparse Matrix comes in handy.