0% found this document useful (0 votes)
34 views6 pages

DAA Question

The document covers various fundamental concepts in computer science, including models of computation, algorithm design techniques, and complexity theory. It discusses key topics such as time and space complexity, asymptotic notation, recursion, and specific algorithms like Heap Sort, Merge Sort, and Quick Sort. Additionally, it explores advanced topics like NP-completeness, approximation algorithms, and dynamic programming solutions for problems like the Travelling Salesman Problem and the Knapsack Problem.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views6 pages

DAA Question

The document covers various fundamental concepts in computer science, including models of computation, algorithm design techniques, and complexity theory. It discusses key topics such as time and space complexity, asymptotic notation, recursion, and specific algorithms like Heap Sort, Merge Sort, and Quick Sort. Additionally, it explores advanced topics like NP-completeness, approximation algorithms, and dynamic programming solutions for problems like the Travelling Salesman Problem and the Knapsack Problem.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

CH-1

1. Define the RAM (Random Access Machine) model of computation.


Explain its key components.

2. What is time complexity? Explain how it is different from space


complexity.

3. Define asymptotic notation and explain the differences between Big-O,


Omega, and Theta notations.

4. Find the time complexity of the Heap Sort algorithm. Explain briefly.

5. Explain the concept of recursion with an example. What are its


limitations?

6. What is tail recursion? How does it improve the efficiency of recursive


functions?

7. Discuss the importance of algorithm design techniques. Explain one


technique in detail.

1. Define the RAM (Random Access Machine) model of computation.


What are its key components?

2. Explain the difference between time complexity and space complexity


with examples.
3. Define asymptotic notation. Differentiate between Big-O, Omega, and
Theta notations.

4. Determine the time complexity of the Heap Sort algorithm. Explain


briefly.

5. Define recursion and explain its use with an example. What are its
limitations?

6. What is tail recursion? How does it improve efficiency?

7. Explain the Divide and Conquer algorithm design technique with an


example.

CH-2

1. Explain the basic method of the Divide and Conquer algorithm.

2. Describe the Merge Sort algorithm with its time complexity.

3. What is Quick Sort? Explain its partitioning method.

4. Explain the Binary Search algorithm and its time complexity.


5. Describe the Matrix-Chain Multiplication problem and its dynamic
programming solution.

6. What is the All-Pairs Shortest Path problem? How is it solved using


dynamic programming?

7. Explain the Travelling Salesman Problem (TSP) and how dynamic


programming can solve it.

CH-3

1. Explain the basic method of the Branch and Bound algorithm.

2. Describe the 15-puzzle problem. How does the Branch and Bound
technique solve it?

3. What is backtracking? Explain its basic method with an example.

4. Explain the Eight Queens problem and how backtracking is used to


solve it.

5. Describe the graph coloring problem. How can backtracking be


applied?
6. What is the Hamiltonian Path problem? Explain how backtracking
solves it.

7. Compare Branch and Bound with Backtracking. Highlight key


differences.

CH-4

1. Explain the basic method of the Greedy algorithm. How does it work?

2. Describe the Knapsack Problem and how the Greedy method solves it.

3. Explain Job Sequencing with Deadlines. How is the Greedy method


applied?

4. What is a Minimum Spanning Tree (MST)? Explain Prim's and


Kruskal's algorithms.

5. What is Lower Bound Theory? Explain bounds on sorting techniques.

6. Explain the Disjoint Set Manipulation technique. What is UNION-FIND?

7. Compare Greedy and Dynamic Programming approaches. Highlight


key differences.

CH-5

1. Explain the properties of graphs. Differentiate between directed and


undirected graphs.
2. Describe the Breadth-First Search (BFS) algorithm. How does it
traverse a graph?

3. Explain the Depth-First Search (DFS) algorithm. How is it different


from BFS?

4. What are matrix manipulation algorithms? Explain with examples.

5. Explain the solution of simultaneous equations using matrix methods.

6. What are the DFT and FFT algorithms? Explain their applications.

7. Explain integer multiplication schemes with an example.

CH-6

1. Explain the concept of NP-completeness. What makes a problem NP-


complete?

2. Differentiate between P, NP, NP-hard, and NP-complete classes.

3. What is the Circuit Satisfiability Problem (C-SAT)? How is it related to


NP-completeness?

4. Explain the Clique Decision Problem. How does it relate to NP-


completeness?

5. What are approximation algorithms? Why are they necessary?


6. Describe the performance guarantee of approximation algorithms.

7. Explain the 0/1 Knapsack Problem and its polynomial-time


approximation scheme (PTAS).

You might also like