Free AKTU notes, question banks, previous year papers & syllabus — new material added regularly. Browse free resources

Syllabus — Design and Analysis of Algorithm Lab

Download PDF

BCS553 · 1 credits · L-T-P 0-0-2

Course Outcomes

At the end of course, the student will be able to:

CO 1Implement algorithm to solve problems by iterative approach.K , K 2 4
CO 2Implement algorithm to solve problems by divide and conquer approachK , K 3 5
CO 3Implement algorithm to solve problems by Greedy algorithm approach.K , K 4 5
CO 4Implement algorithm to solve problems by Dynamic programming, backtracking, branch and bound approach.K , K 4 5
CO 5Implement algorithm to solve problems by branch and bound approach.K , K 3 4

Course Content

  1. Program for Recursive Binary & Linear Search.
  2. Program for Heap Sort.
  3. Program for Merge Sort.
  4. Program for Selection Sort.
  5. Program for Insertion Sort.
  6. Program for Quick Sort.
  7. Knapsack Problem using Greedy Solution
  8. Perform Travelling Salesman Problem
  9. Find Minimum Spanning Tree using Kruskal’s Algorithm
  10. Implement N Queen Problem using Backtracking
  11. Sort a given set of n integer elements using Quick Sort method and compute its time complexity. Run the program for varied values of n> 5000 and record the time taken to sort. Plot a graph of the time taken versus non graph sheet. The elements can be read from a file or can be generated using the random number generator. Demonstrate using Java how the divide and- conquer method works along with its time complexity analysis: worst case, average case and best case.
  12. Sort a given set of n integer elements using Merge Sort method and compute its time complexity. Run the program for varied values of n> 5000, and record the time taken to sort. Plot a graph of the time taken versus non graph sheet. The elements can be read from a file or can be generated using the random number generator. Demonstrate how the divide and- conquer method works along with its time complexity analysis: worst case, average case and best case. 13.6. Implement, the 0/1 Knapsack problem using
  • Dynamic Programming method
  • Greedy method.
  1. From a given vertex in a weighted connected graph, find shortest paths to other vertices using Dijkstra's algorithm.
  2. Find Minimum Cost Spanning Tree of a given connected undirected graph using Kruskal's algorithm. Use Union-Find algorithms in your program.
  3. Find Minimum Cost Spanning Tree of a given undirected graph using Prim’s algorithm.
  4. Write programs to (a) Implement All-Pairs Shortest Paths problem using Floyd's algorithm.
  • Implement Travelling Sales Person problem using Dynamic programming.
  1. Design and implement to find a subset of a given set S = {Sl, S2, .... ,Sn} of n positive integers whose SUM is equal to a given positive integer d. For example, if S ={1, 2, 5, 6, 8} and d= 9, there are two solutions {1,2,6}and {1,8}. Display a suitable message, if the given problem instance doesn't have a solution.
  2. Design and implement to find all Hamiltonian Cycles in a connected undirected Graph G of n vertices using backtracking principle. Note: The Instructor may add/delete/modify/tune experiments, wherever he/she feels in a justified manner It is also suggested that open source tools should be preferred to conduct the lab ( C, C++ etc)

Ratings & Reviews

No reviews yet — share your experience with this item.

Write a review

CAPTCHA — solve the equation shown

Reviews are checked by our team before appearing publicly.