
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 nth 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.