Dynamic programming is the optimized recursive approach. It is two types :

  1. Top Down Approach
  2. Bottom Uo Approach