5.1 Dictionary problem 5.2 Hash functions 5.3 Collisions resolution by chaining 5.4 Open addressing 5.5 Probing strategies: linear, quadratic, and double hashing 5.6 Analysis of open addressing
8.1 Manufacturing problem 8.2 Matrix-chain multiplication 8.3 Elements of dynamic programming 8.4 Four steps of development 8.5 Longest common subsequence problem