Design and Analysis of Algorithms CHAPTER WISE QUESTONS COLLECTION

GYAN WALLA
0



 Design and Analysis of Algorithms


🔹 UNIT 1: Foundation of Algorithm Analysis

  1. What is an algorithm? Explain the properties of an algorithm.

  2. Why do we need algorithms?

  3. Explain the RAM model with a suitable example.

  4. Define time and space complexity.

  5. Explain best, worst, and average case complexity.

  6. Explain aggregate analysis with example.

  7. Explain Big-O notation with example.

  8. Explain Big-Ω notation with example.

  9. Explain Big-Θ notation with example.

  10. Compare Big-O, Big-Ω, and Big-Θ.

  11. Explain geometrical interpretation of asymptotic notations.

  12. What is a recurrence relation?

  13. Solve recurrence using recursion tree method.

  14. Solve recurrence using substitution method.

  15. Solve recurrence using Master’s theorem.

  16. Solve: ( T(n) = 2T(n/2) + 1 )

  17. Solve: ( T(n) = T(n-1) + 1 )


🔹 UNIT 2: Iterative Algorithms

  1. Write an iterative algorithm to find factorial and analyze it.

  2. Write an algorithm to find the nth Fibonacci number and analyze it.

  3. Explain Euclid’s algorithm for GCD.

  4. Define sequential search. Write its algorithm and analyze it.

  5. Write algorithm for bubble sort and analyze it.

  6. Write algorithm for selection sort and analyze it.

  7. Write algorithm for insertion sort and analyze it.

  8. Compare bubble sort, selection sort, and insertion sort.


🔹 UNIT 3: Divide and Conquer Algorithms

  1. Explain divide and conquer strategy with example.

  2. Write recursive algorithm for binary search and analyze it.

  3. Write min-max algorithm using divide and conquer and analyze it.

  4. Write merge sort algorithm and analyze its complexity.

  5. Write quick sort algorithm and analyze best, worst, and average case.

  6. What is the worst case of quick sort? How does randomized quick sort handle it?

  7. Trace quick sort for a given array.

  8. Explain heapify operation with example.

  9. Write heap sort algorithm and analyze it.

  10. Trace heap sort for given data.

  11. Define order statistics problem.

  12. Explain selection in expected linear time.

  13. Explain selection in worst-case linear time.


🔹 UNIT 4: Greedy Algorithms

  1. What is an optimization problem?

  2. What is greedy strategy?

  3. When does greedy algorithm give optimal solution?

  4. Explain elements of greedy strategy.

  5. Solve fractional knapsack problem using greedy method.

  6. Write job sequencing with deadlines algorithm and analyze it.

  7. Find minimum spanning tree using Kruskal’s algorithm.

  8. Find minimum spanning tree using Prim’s algorithm.

  9. Explain Dijkstra’s algorithm with complexity.

  10. What is Huffman coding?

  11. Construct Huffman codes for given frequencies.

  12. Find total number of bits using Huffman coding.


🔹 UNIT 5: Dynamic Programming

  1. What is dynamic programming?

  2. Explain elements of dynamic programming.

  3. Compare greedy algorithm and dynamic programming.

  4. Compare recursion and dynamic programming.

  5. Explain memoization strategy.

  6. Compare dynamic programming and memoization.

  7. Solve matrix chain multiplication using DP.

  8. Find optimal parenthesization of matrix chain.

  9. Find edit distance between two strings using DP.

  10. Solve 0/1 knapsack problem using DP.

  11. Explain Floyd-Warshall algorithm.

  12. Find all-pairs shortest path using Floyd-Warshall algorithm.

  13. Explain travelling salesman problem using DP.


🔹 UNIT 6: Backtracking

  1. What is backtracking?

  2. How does backtracking differ from recursion?

  3. Solve subset sum problem using backtracking.

  4. Trace subset sum algorithm for given set and sum.

  5. Solve 0/1 knapsack problem using backtracking.

  6. Explain N-queen problem using backtracking.

  7. Analyze time complexity of backtracking algorithms.

  8. Does backtracking give multiple solutions? Explain.


🔹 UNIT 7: Number Theoretic Algorithms

  1. Explain Euclid’s algorithm and analyze it.

  2. Explain extended Euclid’s algorithm and analyze it.

  3. Why is extended Euclid’s algorithm used?

  4. Solve modular linear equations.

  5. Solve system of congruences using Chinese Remainder Theorem.

  6. Explain Miller-Rabin randomized primality test.

  7. Analyze complexity of Miller-Rabin test.


🔹 UNIT 8: NP-Completeness & Approximation Algorithms

  1. Define tractable and intractable problems.

  2. Explain polynomial time and super-polynomial time.

  3. Define class P.

  4. Define class NP.

  5. Define NP-Hard problems.

  6. Define NP-Complete problems.

  7. State Cook’s theorem.

  8. Explain problem reducibility.

  9. Prove SAT is NP-Complete.

  10. Prove vertex cover is NP-Complete.

  11. Prove subset sum is NP-Complete.

  12. What is approximation algorithm?

  13. Explain approximation algorithm for vertex cover.

  14. Explain approximation algorithm for subset sum.



Tags

Post a Comment

0Comments

Post a Comment (0)