Algorithms and data structures implemented mostly in C# and/or some in C
Instructions to find your way:
- I tried to separate each data structure and algorithm in separate folders, they resemble the structure of the map below
- Stack (arrays and linked lists in C / generics C#)
- Queue (arrays and linked lists in C / generics C#)
- Binary Search Tree (basic generic implementation in C#)
- Union–find (disjoint-sets) (C#)
- Array rotation to left and right (C#)
- 'Anagram' - Minimum number of character deletions required to make the two strings anagrams. (C#)
- Hash Tables: Ransom Note (Dictionary<K, T> in C#)
- Balanced Brackets (C# using the custom Stack<T> from above)
- Queue (implementation with two stacks in C#)
- Binary Search Tree - check if a binary tree is also a binary serach tree (C# using Binary Search Tree from above)
- Prime numbers - basic algorithm for finding prime numbers (C#)
- Bubble sort (C# / recursive and iterative)
- Selection sort (C#)
- Merge Sort (C and C# (using List<T>))
- Quicksort (C# with List<int>)