DS PoE Question
DS PoE Question
Oral examination
4. Describe the steps of binary search. What condition must the array satisfy for binary search to
work?
11. Describe how bubble sort works. What is its time complexity?
13. Explain the process of selection sort. How does it differ from bubble sort?
14. Describe the time complexity of selection sort. When is it most efficient?
16. How does insertion sort perform compared to selection sort and bubble sort?
19. What is the time complexity of merge sort? Why is it more efficient than bubble sort?
20. Explain the concept of quick sort. How does it work?
22. What is the average and worst-case time complexity of quick sort?
23. When would you choose quick sort over merge sort?
24. How does merge sort achieve its sorting compared to quick sort?
25. Can you compare the space complexities of bubble sort, quick sort, and merge sort?
27. What is the LIFO (Last In, First Out) principle? How does it apply to stacks?
34. What is the FIFO (First In, First Out) principle? How does it apply to queues?
37. What is a circular queue? Why might it be used over a simple queue?
40. What is a priority queue? How does it differ from a regular queue?
42. Describe a scenario where a queue would be more appropriate than a stack.
49. How could a queue be used in an operating system for task scheduling?
50. What are the main differences between stack and queue data structures?
5. Explain the steps for inserting a node at the beginning of a singly-linked list.
10. Describe the steps involved in deleting a node at a specific position in a singly-linked list.
11. How can you search for a specific value in a singly-linked list?
12. What are the primary advantages and disadvantages of linked lists over arrays?
15. How does a queue operate when represented using a linked list?
16. What are the advantages of using a linked list to implement a queue?
21. How does the last node in a circular singly-linked list differ from that in a regular singly-
linked list?
22. Explain how insertion at the beginning of a circular singly-linked list works.
23. Describe the process of inserting a node at the end of a circular singly-linked list.
24. How would you delete a node from a circular singly-linked list?
Unit 4: Trees
26. Define a tree in data structures. How does it differ from a linked list?
27. What is the root of a tree, and how many roots can a tree have?
30. Define a binary tree. How does it differ from a general tree?
33. What is a full binary tree, and how does it differ from a complete binary tree?
34. Describe the structure and usage of a binary search tree (BST).
36. Explain the process of searching for a value in a binary search tree.
37. Describe the algorithm for deleting a node from a binary search tree.
43. What is the process for constructing a binary tree given its in-order and pre-order traversals?
Unit 4: Graphs
44. Define a graph in data structures. What are vertices and edges?
48. How does adjacency list representation of a graph differ from an adjacency matrix?