Divide and Conquer is an algorithmic approach that primarily employs recursion. Some can be solved using iteration. Dynamic Programming is another algorithmic approach where the algorithm uses memory to store previous solutions and compute in a faster manner. Dynamic programming employs almost all algorithmic approaches.