Course on data structures
Week 1:
- array and list (singly-linked and doubly-linked)
- queue and stack
- tree
Week 1 tasks:
- check brackets in the code
- compute tree height
- network packet processing simulation
- extending stack interface
- maximum in sliding window [time limit of 5 seconds not achieved]
Week 2:
- dynamic array
- Amortized analysis
Week 2 included only test, no programming assessment
Week 3:
- priority queues
- disjoint sets
Week 3 tasks:
- convert array into a heap
- simulate parallel processing
- simulate a sequence of merge operations with tables
Week 4:
- hashing
Week 4 tasks:
- realization of phone book with direct addressing
- implement a hash table of words using the chaining scheme
- find all occurrences of pattern in text using optimized Rabin-Karp's algorithm
- comparison of substrings of given string
- find longest common substring of two strings [working not properly]
- pattern matching with mismatches [not solved]
Week 5:
- search trees
- AVL trees
Week 5 included only test, no programming assessment
Week 6:
- splay trees
Week 6 tasks:
- traversals of binary tree
- binary search tree check for correctness
- binary search tree with duplicates check for correctness
- set with range sums [not attempted to solve]
- rope cut [not attempted to solve]