ThatQuiz Test Library Take this test now
DSALGO-reviewer(midterm) - Quiz
Contributed by: Fernandez
  • 1. Which type of tree ensures that the left subtree contains only nodes with values less than the root node, and the right subtree contains nodes with values greater than the root node?
A) binary search tree (BST)
B) Red-Black tree
C) B-tree
D) AVL tree
  • 2. In a binary tree, what is the depth of a node?
A) The number of levels in the tree
B) The height of the node
C) The value of the node
D) The number of nodes on the path from the root to that node
  • 3. Which type of tree has a special condition that the left subtree is less than the root, and the right subtree is greater than the root?
A) AVL tree
B) Binary search tree (BST)
C) B-tree
D) Red-Black tree
  • 4. Which traversal of a binary tree visits the left subtree, then the right subtree, and finally the root?
A) Preorder
B) Level order
C) Inorder
D) Postorder
  • 5. Which node in a tree is at the top and has no parent?
A) Internal node
B) Root node
C) Sibling node
D) Leaf node
  • 6. What is the depth of a tree?
A) The maximum number of children of any node
B) The total number of nodes
C) The height of the tree
D) The number of edges from the root to the deepest leaf
  • 7. In a binary tree, each node can have a maximum of how many children?
A) 2
B) 0
C) 3
D) 1
  • 8. Which tree structure is used in database indexing to optimize search and retrieval operations?
A) Trie
B) Binary search tree
C) B-tree
D) AVL tree
  • 9. Which type of tree is used in balancing binary search trees to maintain their height and performance?
A) AVL tree
B) Binary tree
C) Trie
D) B-tree
  • 10. Which traversal of a binary tree visits the left subtree, then the root, and finally the right subtree?
A) Inorder
B) Level order
C) Preorder
D) Postorder
  • 11. What is the height of a tree? *
A) The number of nodes in the tree
B) The number of leaves in the tree
C) The maximum number of children a node can have
D) The distance from the root to the deepest leaf
  • 12. Which traversal of a binary tree visits the root first, then the left subtree, and finally the right subtree?
A) Postorder
B) Preorder
C) Inorder
D) Level order
  • 13. A node in a binary tree with no children is known as a:
A) Sibling node
B) Internal node
C) Leaf node
D) Unary node
  • 14. What is a tree in data structures?
A) A hash table
B) A graph
C) A linear data structure
D) A hierarchical data structure
  • 15. In a binary tree, if a node has only one child, is it a left child or a right child?
A) It must be a left child.
B) It must be a right child.
C) It cannot have only one child.
D) It could be either a left or a right child.
  • 16. What is the primary purpose of a binary search tree (BST)?
A) To minimize the height of the tree
B) To ensure the tree is balanced
C) To store data in a random order
D) To store data in a sorted order
  • 17. In a binary tree, a node with only one child is called a:
A) Leaf node
B) Internal node
C) Sibling node
D) Unary node
  • 18. In a balanced binary search tree, what is the height typically restricted to?
A) Constant
B) Logarithmic in the number of nodes
C) Linear in the number of nodes
D) Quadratic in the number of nodes
  • 19. In graph terminology, what is a "path"?
A) A route connecting two nodes
B) A collection of edges
C) A set of all nodes in the graph
D) A cycle without any vertices
  • 20. What characterizes a connected graph?
A) It is a directed graph only
B) All vertices are reachable from one another
C) There are no edges
D) It has multiple components
  • 21. What is a graph?
A) A linear data structure
B) A collection of nodes and edges
C) A collection of arrays
D) A type of tree
  • 22. Which algorithm is commonly used to find the shortest path in a weighted graph?
A) Depth-first search
B) Kruskal's algorithm
C) Dijkstra's algorithm
D) Prim's algorithm
  • 23. What does a bipartite graph consist of?
A) Two sets of vertices where edges only connect nodes from different sets
B) Only one vertex
C) Vertices that form a cycle
D) A single set of vertices
  • 24. What is the degree of a vertex in a graph?
A) The number of paths from that vertex
B) The total number of vertices in the graph
C) The number of edges connected to it
D) The distance to the farthest vertex
  • 25. What does the term "adjacency" refer to in graph theory?
A) The total number of edges
B) A connection between two vertices
C) The number of vertices in a graph
D) The distance between two vertices
  • 26. In a directed graph, an edge has a direction. What does this imply?
A) The edge does not exist
B) The edge can only be traversed in one way
C) The edge connects two nodes of different types
D) The edge can be traversed in both ways
  • 27. In an undirected graph, how many edges can connect two vertices?
A) 1 or more
B) Exactly 2
C) Infinite
D) 0 or 1
  • 28. What is a weighted graph?
A) A graph where edges have values associated with them
B) A graph with no edges
C) A graph where vertices have weights
D) A graph where all edges have the same weight
  • 29. What is the purpose of an adjacency matrix?
A) To store edge weights only.
B) To perform sorting operations.
C) To simplify graph traversal.
D) To represent node and edge connectivity in a graph.
  • 30. What is a connected graph?
A) A graph where all vertices are connected by edges
B) A graph that can be divided into two or more subgraphs
C) A graph with no edges
D) A graph that contains cycles
  • 31. In a "simple graph," which of the following characteristics holds true?
A) It contains at least one cycle.
B) It allows weighted edges.
C) It is always directed.
D) It has no parallel edges or self-loops.
  • 32. What is a cycle in a graph?
A) A disconnected graph
B) A closed path where the starting and ending vertices are the same
C) A graph with no edges
D) A path that visits every vertex
  • 33. Which data structure is commonly used to represent a graph?
A) Linked list
B) Stack
C) Array only
D) Adjacency matrix
  • 34. What type of graph has all pairs of vertices connected by exactly one edge?
A) Directed Graph
B) Undirected Graph
C) Bipartite Graph
D) Complete Graph
  • 35. What type of graph can be divided into two disjoint sets where each edge connects a vertex from one set to the other?
A) Weighted Graph
B) Bipartite Graph
C) Complete Graph
D) Directed Graph
  • 36. What is a Queue?
A) A hierarchical data structure
B) A non-linear data structure
C) A linear data structure
D) A data type in C++
  • 37. In a queue, which item gets removed first?
A) The item in the middle
B) The first item added
C) The last item added
D) The item at random
  • 38. What is the process of adding an element to a queue called?
A) Enqueue
B) Push
C) Pop
D) Dequeue
  • 39. What is the process of removing an element from a queue called?
A) Push
B) Enqueue
C) Pop
D) Dequeue
  • 40. Which data structure follows the First-In-First-Out (FIFO) principle?
A) linked list
B) queue
C) tree
D) stack
  • 41. Which of the following operations are typically performed on a queue?
A) Insertion and deletion at both ends
B) Only deletion
C) Insertion at one end and deletion at the other end
D) Only insertion
  • 42. In a circular queue, what happens when you reach the end of the queue and want to add more elements?
A) Elements are added at the end of the queue
B) An error is generated
C) Elements are discarded
D) Elements are added at the beginning of the queue
  • 43. Which of the following is not a type of queue?
A) Priority Queue
B) Circular Queue
C) Deque
D) Banana queue
  • 44. What is the time complexity of enqueue and dequeue operations in a basic queue implemented using an array?
A) O(n) for both enqueue and dequeue
B) O(1) for both enqueue and dequeue
C) O(n) for enqueue and O(1) for dequeue
D) O(n) for both enqueue and dequeue
  • 45. Which of the following is not a valid method to implement a queue?
A) Using stacks
B) Using dynamic arrays
C) Using linked lists
D) Using arrays
  • 46. What is a priority queue?
A) A queue that processes elements in a random order
B) A queue in which elements are processed based on their priority
C) A queue that gives priority to older elements
D) A queue with a fixed size
  • 47. Which data structure is commonly used to implement a priority queue?
A) Queue
B) Circular queue
C) Stack
D) Binary heap
  • 48. What is the primary difference between a regular queue and a double-ended queue (deque)?
A) A deque can only dequeue elements from the front.
B) A regular queue is faster than a deque.
C) A deque can enqueue and dequeue elements at both ends.
D) A deque can only enqueue elements at the front.
  • 49. In a priority queue, which element gets processed first?
A) The element with the lowest priority
B) The element with the highest priority
C) The element added most recently
D) The element added least recently
  • 50. Which type of queue allows elements to be inserted and removed from both ends, like a deck of cards?
A) Priority Queue
B) Normal Queue
C) Circular Queue
D) deque
  • 51. Which data structure can be used to implement a queue with a fixed size and overwrite old elements when it's full?
A) Stack
B) Deque
C) Circular Queue
D) Priority Queue
  • 52. What is the size of a queue after enqueueing n elements and then dequeuing m elements, where m > n?
A) n
B) 0
C) m
D) n-m
  • 53. In a priority queue, if two elements have the same priority, how are they typically handled?
A) The order is implementation-specific.
B) The last element added is processed first.
C) The first element added is processed first.
D) They are processed in a random order.
  • 54. Which of the following is not a common application of a queue data structure?
A) Sorting algorithms
B) Breadth-first search (BFS)
C) Print spooling
D) Undo functionality in text editors
  • 55. Which operation can be performed in constant time (O(1)) on a well-implemented queue?
A) Enqueue
B) None of the above
C) Dequeue
D) Both enqueue and dequeue
  • 56. In a double-ended queue (deque), which operation allows you to retrieve the element at the front without removing it?
A) pop_front()
B) front()
C) remove_front()
D) dequeue()
  • 57. What is the primary advantage of using a circular queue over a basic queue?
A) Simpler implementation
B) Faster enqueue operation
C) Better memory utilization
D) No advantage; they are equivalent
  • 58. Which data structure is often used to implement a queue with a maximum size, where adding elements beyond the limit removes the oldest elements?
A) Cache
B) Deque
C) Circular Queue
D) Priority Queue
  • 59. What is the term used to describe a queue that allows elements to be added and removed at both ends, but does not have a fixed size?
A) Priority Queue
B) Circular Queue
C) Stack
D) Deque
  • 60. Which of the following is a disadvantage of using an array-based implementation for a queue?
A) It may lead to wasted memory for a large maximum size.
B) It is not suitable for implementing a priority queue.
C) It allows for dynamic sizing.
D) It has faster enqueue and dequeue operations.
  • 61. In a priority queue, which element will be removed first?
A) The element with the lowest value
B) The first element added
C) The element with the highest value
D) The last element added
  • 62. Which type of queue allows elements to be processed in the order they were added?
A) Deque
B) Circular Queue
C) Priority Queue
D) Normal Queue
  • 63. What data structure can be used to efficiently implement a priority queue that allows fast insertion and removal of elements with the highest priority?
A) heap data structure
B) Linked List
C) Stack
D) Binary Tree
  • 64. In a double-ended queue (deque), which operation allows you to retrieve the element at the back without removing it?
A) dequeue()
B) remove_back()
C) back()
D) pop_back()
  • 65. Which type of queue allows elements to be processed based on their age, with older elements processed first?
A) Priority Queue
B) Age-Ordered Queue
C) Circular Queue
D) Normal Queue
  • 66. In a circular queue, how do you detect that the queue is full?
A) Check if the rear pointer is ahead of the front pointer by 1.
B) Check if the front pointer is ahead of the rear pointer by 1.
C) Compare the rear and front pointers modulo the queue size.
D) Circular queues cannot be full.
  • 67. In a priority queue, what happens when two elements have the same priority and are removed?
A) The element with the lower value is removed.
B) The element added first is removed.
C) The element with the higher value is removed.
D) It's implementation-dependent.
  • 68. Which is not a Characteristics of an Algorithm
A) Output
B) Dependent
C) Input
D) Feasibility
E) Unambiguous
  • 69. This signifies the total time required by the program to run till its completion.
A) Efficiency
B) Abstraction
C) Space Complexity
D) Reusability
E) Time complexity
  • 70. This is the amount of memory used by the algorithm (including the input values to the algorithm) to execute and produce the result.
A) Time complexity
B) Space Complexity
C) Efficiency
D) Reusability
E) Abstraction
  • 71. once we have implemented a particular data structure, we can use it at any other place.
A) Reusability
B) Efficiency
C) Abstraction
D) Time complexity
  • 72. This characteristic describes whether the data items are arranged in chronological sequence, such as with an array, or in an unordered sequence, such as with a graph.
A) Static or dynamic
B) Linear or non-linear
C) Homogeneous or non-homogeneous
  • 73. This characteristic describes whether all data items in a given repository are of the same type or of various types.
A) Static or dynamic
B) Linear or non-linear
C) Homogeneous or non-homogeneous
  • 74. This characteristic describes how the data structures are compiled.
A) Linear or non-linear
B) Homogeneous or non-homogeneous
C) Static or dynamic
  • 75. This is broadly defined as the process of organizing data by relevant categories so that it may be used and protected more efficiently.
A) Data classification
B) Content
C) User
D) Context
Students who took this test also took :

Created with That Quiz — where a math practice test is always one click away.