Data Structures and Algorithms in C#
A personal project with implementations of data structures and algorithms, written in C# and created out of curiosity and for learning purposes.
Requirements
- .NET Core 2.0
Data Structures
Arrays:
Lists:
Stacks:
Queues:
Heaps:
- Binary Min-Heap
- Binary Max-Heap
- Binomial Min-Heap
- Binomial Max-Heap
- Fibonacci Min-Heap
- Fibonacci Max-Heap
Trees:
- Binary Search Tree
- Binary Search Tree Map
- AVL Tree
- AVL Tree Map
- Red-Black Tree
- Red-Black Tree Map
- Splay Tree
- Splay Tree Map
- Trie(Prefix Tree)
- Trie Map
- Suffix Tree
- Suffix Tree Map
Graphs:
- Undirected Unweighted Graphs
- Directed Unweighted Graphs
- Undirected Weighted Graphs
- Directed Weighted Graphs
Algorithms
Sorting:
- Heap Sort
- Merge Sort
- Parallel Merge Sort
- Quick Sort
- Quick3 Sort
- Parallel Quick Sort
Searching:
- Linear Search
- Binary Search
- Quick Select
Subsequences:
Strings:
- Longest Common Substring
- Edit Distance
- String Search
Trees:
Graphs:
- Minimum Spanning Tree
- Shortest Paths
Licence
Licenced under the MIT Licence.