PRIYADARSHINI ENGINEERING COLLEGE – VANIYAMBADI
Department of Computer Applications
Regulation – 2025 – I Year / I Sem
[Link] / [Link] : MC25104 - Data Structures and Algorithms using Python
Faculty Name : [Link], AP/MCA
QUESTION BANK
UNIT I – Python Programming and Algorithmic Analysis
2-Mark Questions
1. Define Python programming language.
2. What are variables in Python?
3. Differentiate between mutable and immutable objects.
4. What is the use of indentation in Python?
5. Define control flow statements.
6. What are conditional statements?
7. Write the syntax of a for loop.
8. What is the difference between while loop and for loop?
9. Define function in Python.
10. What are arguments and parameters?
11. What is recursion?
12. Define list in Python.
13. What is tuple?
14. Differentiate between list and tuple.
15. What are dictionary data types?
16. Define slicing.
17. What is string indexing?
18. What are Python expressions?
19. Define namespace.
20. What is object-oriented programming?
21. What is encapsulation?
22. Define inheritance.
23. What is data abstraction?
24. What are classes and objects?
25. Define constructor in Python.
13-Mark Questions
1. Explain Python variables, operators, and expressions with examples.
2. Discuss control flow statements and looping constructs in Python.
3. Explain functions in Python with suitable examples.
4. Describe strings, lists, tuples, and dictionaries with examples.
5. Explain mutable and immutable data types in Python.
6. Discuss list operations and slicing techniques in detail.
7. Explain object-oriented programming concepts in Python.
8. Discuss classes, objects, constructors, and inheritance with examples.
9. Explain encapsulation and data abstraction in Python.
10. Write a Python program using functions and recursion.
UNIT II – ABSTRACT DATA TYPES AND LINEAR STRUCTURES
2-Mark Questions
1. Define Abstract Data Type (ADT).
2. What is the importance of ADTs?
3. Differentiate between data structure and ADT.
4. Define stack.
5. What are stack operations?
6. Define queue.
7. List queue operations.
8. What is recursion?
9. Define asymptotic notation.
10. What is Big O notation?
11. Define divide and conquer strategy.
12. What is shallow copy?
13. What is deep copy?
14. Define namespace in Python.
15. What is inheritance?
16. What are recursive algorithms?
17. Define time complexity.
18. Define space complexity.
19. What is algorithm analysis?
20. What are linear data structures?
13-Mark Questions
1. Explain Abstract Data Types with suitable examples.
2. Discuss stack ADT and its applications.
3. Explain queue ADT and its applications.
4. Explain asymptotic notations with examples.
5. Discuss divide and conquer strategy.
6. Explain recursion and recursive algorithms.
7. Analyze recursive algorithms with examples.
8. Explain shallow copy and deep copy in Python.
9. Discuss classes and inheritance in Python.
10. Explain algorithm analysis techniques.
UNIT III – SORTING AND SEARCHING
2-MARK QUESTIONS
1. Define sorting.
2. What is Bubble Sort?
3. Define Selection Sort.
4. What is Insertion Sort?
5. Define Merge Sort.
6. What is Quick Sort?
7. Define searching.
8. What is Linear Search?
9. What is Binary Search?
10. Define hashing.
11. What is a hash function?
12. Define collision handling.
13. What is load factor?
14. What is rehashing?
15. Define time complexity of Bubble Sort.
16. What is the best case of Binary Search?
17. Differentiate between linear and binary search.
18. What is divide and conquer in Merge Sort?
19. Define stable sorting algorithm.
20. What is in-place sorting?
13-Mark Questions
1. Explain Bubble Sort with algorithm and example.
2. Discuss Selection Sort with complexity analysis.
3. Explain Insertion Sort with example.
4. Explain Merge Sort using divide and conquer technique.
5. Discuss Quick Sort with suitable example.
6. Compare all sorting algorithms with complexity analysis.
7. Explain Linear Search and Binary Search with examples.
8. Discuss hashing and hash functions in detail.
9. Explain collision handling techniques.
10. Discuss load factor, rehashing, and efficiency of hashing.
UNIT IV – TREE STRUCTURES
2-Mark Questions
1. Define tree ADT.
2. What is a binary tree?
3. Define root node.
4. What is leaf node?
5. Define height of a tree.
6. What is a binary search tree?
7. Define AVL tree.
8. What is tree traversal?
9. List different tree traversal methods.
10. Define inorder traversal.
11. What is preorder traversal?
12. Define postorder traversal.
13. What is heap?
14. Define max heap.
15. Define min heap.
16. What are multiway search trees?
17. Define balanced tree.
18. What is rotation in AVL tree?
19. Define parent and child nodes.
20. What is subtree?
13-Mark Questions
1. Explain tree ADT with suitable example.
2. Discuss binary tree representations and operations.
3. Explain tree traversal methods with examples.
4. Discuss Binary Search Trees and their operations.
5. Explain AVL trees and balancing operations.
6. Explain heaps and heap operations.
7. Discuss insertion and deletion in Binary Search Trees.
8. Explain rotations in AVL trees.
9. Discuss applications of heaps.
10. Explain multiway search trees with examples.
UNIT V – GRAPH STRUCTURES
2-Mark Questions
1. Define graph ADT.
2. What are the types of graphs?
3. Define directed graph.
4. What is an undirected graph?
5. Define DAG.
6. What is graph traversal?
7. Define BFS.
8. What is DFS?
9. Define topological ordering.
10. What is shortest path?
11. Define minimum spanning tree.
12. What is greedy algorithm?
13. Define dynamic programming.
14. What is complexity class?
15. Define tractable problem.
16. What is intractability?
17. Define weighted graph.
18. What is adjacency matrix?
19. Define adjacency list.
20. What is spanning tree?
13-Mark Questions
1. Explain graph ADT and graph representations.
2. Discuss BFS and DFS traversals with examples.
3. Explain topological ordering in DAG.
4. Discuss greedy algorithms with examples.
5. Explain dynamic programming approach.
6. Discuss shortest path algorithms.
7. Explain minimum spanning tree algorithms.
8. Compare BFS and DFS.
9. Discuss complexity classes and intractability.
10. Explain graph traversal applications.
Important Programs for Practice
1. Python program for factorial using recursion.
2. Python program for palindrome checking.
3. Stack implementation using list.
4. Queue implementation using list.
5. Bubble Sort implementation.
6. Merge Sort implementation.
7. Quick Sort implementation.
8. Linear Search implementation.
9. Binary Search implementation.
10. Binary Search Tree insertion and traversal.
11. Graph traversal using BFS.
12. Graph traversal using DFS.
13. Heap implementation.
14. AVL Tree insertion.
15. Hash table implementation.
Frequently Asked University Exam Questions
1. Explain OOP concepts in Python.
2. Compare Merge Sort and Quick Sort.
3. Explain stack and queue operations.
4. Discuss hashing and collision handling.
5. Explain tree traversal algorithms.
6. Discuss Binary Search Tree operations.
7. Explain BFS and DFS traversals.
8. Discuss shortest path algorithms.
9. Explain asymptotic notations.
10. Write short notes on dynamic programming.
All The Best