## Introduction

This is semester we continue what we started in summer. You can read our Intro there to get the picture. The session numbers contirnue from there as well. ðŸ™‚

#### Session 8 (Lectures 15 — 16 and Problem Set 4)

** Date: **October 16

**Session Review:** Some students had problems comprehending the Dijkstra algorithm basics. *Ali* helped them to clear the problems. Then, *Saleh* started the review of Problem Set 4. He answered the questions until hitting the coding part which was decided to be left out to the participants. The code is about “**DNA Sequence Matching**” and is quite interesting in my opinion. Students challenge their knowledge of Rolling Hashes and Table Doubling as they go on.

*For the next session, students will go through lecture 17 and review PSet 5.*

#### Session 12 (Lectures 19)

** Date: **October 16

**Session Review:** Some students had problems comprehending the part of lecture about Shortest Paths. *Saleh* helped them to clear the problems. Then, *Ali* started implementing three different algorithms to calculate the n^{th} number in the Fibonacci sequence. The algorithms include the **Recursive** method, **Memoization**, and the **Bottom-Up** dynamic programming method. Then, he used a profiler to analyze the runtime for these three algorithms and we witnessed first-hand, how powerful dynamic programming can be. The code is available in the **Dynamic Programming** repository in our github page. link below.

*For the next session, students will go through lecture 20.*