Programming assignments on each algorithmic strategy:
• Divide and conquer method (quick sort, merge sort, Strassen’s matrix multiplication),
• Greedy method (knapsack problem, job sequencing, optimal merge patterns, minimal
spanning trees).
• Dynamic programming (multistage graphs, OBST, 0/1 knapsack, traveling salesperson
problem).
• Back tracking (n-queens problem, graph coloring problem, Hamiltonian cycles).
• Sorting : Insertion sort, Heap sort, Bubble sort
• Searching : Sequential and Binary Search
• Selection : Minimum/ Maximum, Kth smallest element