WHAT IS ALGORITHM DESIGN? Algorithm Design is a specific method to create mathematical process in solving various classical problems, real world complex problems. Techniques for designing and implementing algorithm design are design patterns. ALGORITHM DESIGN TECHNIQUES We have 5 base techniques that can be used to design any algorithm. Divide and Conquer Greedy Method Dynamic Programming Back Tracking Branch and Bound WHAT IS DIVIDE AND CONQUER TECHNIQUE? In branch and bound technique, we break the main problem into several sub-problems. Sub-problems are similar to original problem but smaller in size. To solve given problem algorithm call themselves to deal with subproblems. Once subproblems are solved recursively then combine these solutions to create a final solution for the original problem. Merge Sort Algorithm follow Divide and Conquer method. Step 01: Divide the main problem into subproblems [n/2]. Step 02: Solve the subproblems recursively. Step 03: Combine the solutions to