I am reading a book called algorithm and data structure using python
http://interactivepython.org/runestone/static/pythonds/index.html
Its a free interactive book, quite good and quite difficult. I basically upload what I have learned about recursion and dynamic programming to this repository.
1.Fibonacci
2.Prime Factorization
3.Hanoi Tower
4.Palindrome
5.Pascal Triangle
6.Knapsack (Dynamic Programming)
7.Edit Distance (Dynamic Programming)