This is a repository where I upload my implementations of various algorithms we examine on our school. I also add homework files when it is applicable(i.e. if homework requires programming, I upload its programming part). So far, I have implemented the ones below:
These algorithm implementations can be found on sorts.h file.
- Insertion Sort
An in-place sorting algorithms with worst case running time scenario . - Merge Sort
An algorithm that uses divide and conquer. Its running time is - Quick Sort
Another sorting algorithm that uses divide and conquer method. Worst case running time but expected running time is .
-
Red Black Tree
Red Black Trees are special kind of binary search trees where tree is guaranteed to be in balance. Tree size is lgn at most. -
Order Statistic Tree
In this repo, you can find an order statistic tree based on red black trees. Order statistic tree is an efficient tree structure to get the ith smallest item where i is an index of your choice. -
Minimum Heap
Priority queue implementation using minimum heaps. -
Graph
Graph implementation using adjacency list. Same file also has breadth first and depth first search algorithms inside it.