1. What is the primary purpose of a data structure?
(A) To store data
(B) To organize data
(C) To retrieve data efficiently
(D) All of the above
2. Which of the following is a linear data structure?
(A) Tree
(B) Graph
(C) Array
(D) Hash Table
3. What type of data structure uses a Last In First Out (LIFO) order?
(A) Queue
(B) Stack
(C) Linked List
(D) Array
4. Which operation is NOT typically performed on a queue?
(A) Enqueue
(B) Dequeue
(C) Push
(D) Peek
5. What is the time complexity of accessing an element in an array?
(A) O(1)
(B) O(n)
(C) O(log n)
(D) O(n^2)
6. Which data structure is used for implementing recursion?
(A) Queue
(B) Stack
(C) Array
(D) Linked List
7. What is the worst-case time complexity of searching in a binary search tree?
(A) O(1)
(B) O(log n)
(C) O(n)
(D) O(n log n)
8. Which of the following is a non-linear data structure?
(A) Array
(B) Linked List
(C) Stack
(D) Tree
9. What is the maximum number of nodes in a binary tree with a height of h?
(A) h
(B) 2^h
(C) 2^(h+1) – 1
(D) h^2
10. In which data structure are elements added and removed from the same end?
(A) Queue
(B) Stack
(C) Deque
(D) Array
11. What is a key characteristic of a doubly linked list?
(A) Each node has one pointer
(B) Nodes can only be traversed forward
(C) Nodes can be traversed in both directions
(D) It requires more memory than a singly linked list
12. What type of search algorithm uses a divide and conquer approach?
(A) Linear Search
(B) Binary Search
(C) Breadth-First Search
(D) Depth-First Search
13. Which data structure is best suited for implementing a priority queue?
(A) Array
(B) Linked List
(C) Heap
(D) Stack
14. What is the main advantage of using a hash table?
(A) Fast search times
(B) Ordered data
(C) Less memory usage
(D) Easy implementation
15. Which of the following traversals is not applicable to a binary tree?
(A) Inorder
(B) Preorder
(C) Postorder
(D) Level-order
16. What is the average-case time complexity for inserting an element in a hash table?
(A) O(1)
(B) O(log n)
(C) O(n)
(D) O(n log n)
17. Which data structure is used to implement recursion?
(A) Queue
(B) Stack
(C) Array
(D) Tree
18. What is a common application of a graph data structure?
(A) Representing hierarchical data
(B) Storing data in tables
(C) Network routing
(D) Managing tasks in a to-do list
19. Which of the following is a characteristic of a circular linked list?
(A) The last node points to NULL
(B) It can be traversed in one direction only
(C) The last node points to the first node
(D) It has a fixed size
20. What is the primary disadvantage of using a linked list compared to an array?
(A) Memory overhead
(B) Easier insertion
(C) Better performance
(D) Faster access time
21. Which data structure is used for breadth-first traversal?
(A) Stack
(B) Queue
(C) Array
(D) Linked List
22. What is the time complexity for searching an element in a balanced binary search tree?
(A) O(1)
(B) O(n)
(C) O(log n)
(D) O(n log n)
23. Which of the following data structures is used to implement a backtracking algorithm?
(A) Stack
(B) Queue
(C) Hash Table
(D) Tree
24. In a binary search tree, which of the following is true about the left and right subtrees?
(A) The left subtree contains only nodes with values greater than the root
(B) The right subtree contains only nodes with values less than the root
(C) The left subtree contains only nodes with values less than the root
(D) The right subtree contains only nodes with values greater than the root
25. Which of the following is NOT a valid operation for a stack?
(A) Push
(B) Pop
(C) Enqueue
(D) Peek
26. What is the time complexity of deleting an element from a singly linked list?
(A) O(1)
(B) O(n)
(C) O(log n)
(D) O(n log n)
27. Which data structure allows for the insertion and deletion of elements from both ends?
(A) Stack
(B) Queue
(C) Deque
(D) Linked List
28. What is the primary use of a trie data structure?
(A) Implementing a priority queue
(B) Storing strings
(C) Performing quick searches
(D) Storing integers
29. In which data structure is the first element to be inserted the first one to be removed?
(A) Stack
(B) Queue
(C) Array
(D) Linked List
30. What is the main characteristic of a red-black tree?
(A) Every node is red
(B) It is always balanced
(C) It has a maximum height of 2 log(n)
(D) It is a complete binary tree
31. Which of the following is NOT a valid tree traversal method?
(A) Inorder
(B) Preorder
(C) Postorder
(D) Crossorder
32. What is the worst-case time complexity for inserting an element into a hash table?
(A) O(1)
(B) O(log n)
(C) O(n)
(D) O(n log n)
33. Which of the following data structures is used to implement a priority queue?
(A) Array
(B) Stack
(C) Binary Heap
(D) Linked List
34. What type of data structure is a binary tree?
(A) Linear
(B) Non-linear
(C) Hash-based
(D) None of the above
35. Which of the following is true about a binary search tree?
(A) All nodes are filled from left to right
(B) Each node has at most two children
(C) The left child is always smaller than the parent
(D) Both B and C
36. What is the main disadvantage of a hash table?
(A) It is slow
(B) It uses more memory
(C) It has poor average-case time complexity
(D) It is not flexible
37. Which data structure is best suited for implementing an undo feature in applications?
(A) Stack
(B) Queue
(C) Linked List
(D) Array
38. What is the purpose of a sentinel node in a linked list?
(A) To mark the end of the list
(B) To simplify insertion and deletion
(C) To hold the value of the list
(D) None of the above
39. Which of the following is a property of a B-tree?
(A) It is a binary tree
(B) It is balanced
(C) It allows for faster searches than a binary search tree
(D) Both B and C
40. What is the main advantage of using an array over a linked list?
(A) Dynamic sizing
(B) Ease of implementation
(C) Better memory locality
(D) Flexibility