My Algorithm design course at CEIT/AUT (Fall 2021).
In this repository, I represent my projects and practices in algorithm design.
- Solve recursive relationships
- the master theorem
- recursive tree
- Heap sort
- Quick sort
- Linear time sorting algorithms
- Counting sort
- Radix sort
- Bucket sort
- Finding the median
- selection problem
- Breaker analysis
- Algorithm designs
- Divide and conqure
- Dynamic programming
- Backtracking
- Branch and bound
- Greedy approach
Project | Subjects | PL |
---|---|---|
8 queen with barrier | Backtracking | JS |
8 queen with bonus barrier | Backtracking / Greedy | JS |
Balanced binary tree | Divide and conqure | Python |
Boyer-Moore Pattern Searching | Searching | C++ |
Floyd Warshall algorithm | Dynamic programming | Python |
Ford Fulkerson algorithm | Greedy | Python |
Huffman coding algorithm | Lossless data compression | Python |
Kth Smallest Element | Divide and conqure | C/C++ |
Longest common subsequence | Dynamic programming | C |
Longest increasing subsequence | Dynamic programming | JS |
Maximum subarray sum | Divide and conqure | JS |
Median of two sorted arrays | Selection | JS/C/C++ |
N-queen problem | Backtracking | C |
Rabin Krap algorithm | String-searching | Python |
Weighted colored cubes | Greedy | JS |