Course Code: 23CST02 R23
QUESTION BANK (DESCRIPTIVE)
Subject with Code : Data Structure(23CST02) Year &Sem: I-B.Tech & II-Sem
Regulation: R23
Course & Branch: CSE & Allied
UNIT-I
Introduction to Linear Data Structures
1. a) Give the formal Definition of DataStructure. [L1, CO1] [2M]
b) What is Abstract Data Type(ADT)? [L1, CO1] [2M]
c) How many types of Data Structures are there? [L1, CO1] [2M]
d) List out Linear data structures [L1, CO1] [2M]
e) Define time complexity and space complexity. [L1, CO1] [2M]
2. a) Illustrate Linear Search with an sample list of elements. [L3, CO1] [5M]
b) What are the advantages of linear datastructures? [L2, CO1] [5M]
3. a) Write and explain algorithm for Bubble sort [L2, CO1] [5M]
b) Draw a table specifying the time complexity of searching and sorting [L3, CO1] [5M]
techniques.
4. a) Explain and apply Insertion sort for following list of numbers [L3, CO1] [10M]
4,6,7,5,9,3,1,8,2.
5. Differentiate Linear search and Binary Search with sample list of numbers. [L2, CO1] [10M]
6. a) Apply selection sort for following list of numbers 4,6,7,5,9,3,1,8,2 [L3, CO1] [5M]
b) Write a C program for reversing the elements of array. [L2, CO1] [5M]
Define Array. Illustrate Binary Search algorithm with the given list of [L3, CO1] [10M]
7. numbers 2,5,8,12,16,23,38,56,92,71 with key=23.
Explain steps involved in Bubble sort algorithm. Sort the following list of [L3, CO1] [10M]
8. numbers by applying bubble sort 55,77,88,33,88,66,44.
Explain Selection sort algorithm step by step in detail with an example [L2, CO1] [10M]
9.
a) Write about arrays and memory allocation for array elements. [L2, CO1] [5M]
10.
b) Describe the importance of Linear Data structures [L2, CO1] [5M]
11. a) Write a C program to create an array of size 10 and assign values to the array [L3, CO1] [5M]
elements.
b) Explain how a two dimensional array elements are stored in memory. [L2, CO1] [5M]
UNIT-II
LINKED LIST
1. a) What are the ways of implementing linked list? [L1, CO2] [2M]
b) What are the types of linked lists? [L1, CO2] [2M]
c) How the singly linked lists can be represented? [L2, CO2] [2M]
d) How the doubly linked list can be represented? [L2, CO2] [2M]
e) What are the advantages of linked list? [L1, CO2] [2M]
2. a) Explain the operations of singly linked lists. [L3, CO2] [5M]
b) What are the advantages of linked list? [L2, CO2] [5M]
3. a) Explain the insertion operation in Single linked list. How nodes are inserted [L2, CO2] [5M]
after a specified node.
b) Illustrate the use of linked list. [L3, CO2] [5M]
4. a) Explain the operations of doubly linked lists. [L1, CO2] [5M]
b) Explain the operations of circularly linked lists. [L2, CO2] [5M]
5. Explain the applications of linked lists in detail. [L2, CO2] [10M]
6. a) Advantages of Linked List over Array. [L3, CO2] [5M]
b) Explain Representation of linked list. [L3, CO2] [5M]
What is the draw backs of single linked list? Explain how to implement insert and [L2, CO2] [10M]
7. traverse operations in circular linked list.
Create a Doubly linked list by inserting following elements in a list
a) [L3, CO2] [5M]
8. 13,45,23,20,25.
b) Write algorithm for insert and delete a node from doubly linked list. [L2, CO2] [5M]
What is linked list? Write and explain the algorithm for crate, insertion and [L2, CO2] [10M]
9. traverse operations in doubly linked list with example.
a) Explain the circular linked list in detail. [L2, CO2] [5M]
10.
b) List the advantages of circular linked list. [L3, CO2] [5M]
11. a) Differentiate linked list and Array. [L3, CO2] [5M]
b) Specify the use of Header node in a linked list. [L2, CO2] [5M]
UNIT-III
STACKS
1. a) Define Stack [L1, CO3] [2M]
b) Give the Abstract Data Type(ADT) of Stack [L1, CO3] [2M]
c) What are the operations that can be done on Stack? [L1, CO3] [2M]
d) Mention the constraints for performing Push and Pop Operations [L1, CO3] [2M]
e) List out the applications of Stack. [L1, CO3] [2M]
2. a) Write and explain the algorithms for push and pop operations [L3, CO3] [5M]
b) Explain what happens if a push operation is attempted when the stack is full or a [L2, CO3] [5M]
pop operation is attempted when the stack is empty.
3. a) Illustrate the step-by-step process of performing the following operations on [L2, CO3] [5M]
an initially empty stack that can hold a maximum of 5 elements:
1. Push(10)
2. Push(20)
3. Pop()
4. Push(30)
5. Push(40)
6. Pop()
7. Push(50)
8. Push(60)
Clearly indicate the state of the stack and the value returned (if any) after each
operation.
b) Draw a table specifying the time complexity of searching and sorting [L3, CO3] [5M]
techniques.
4. Imagine you are writing a program to check if a given string of parentheses is balanced [L3, CO3] [10M]
(e.g., "([]{})" is balanced, but "([)]" is not). Explain how you could use a stack to solve
this problem. Describe what would be pushed onto the stack and what would trigger a
pop operation. Provide an example of a balanced and an unbalanced string and trace the
stack operations for each.
5. Describe step by step process to convert an arithmetic expression from infix to [L2, CO3] [10M]
postfix operation.
6. a) Write an algorithm for evaluating postfix expression using stack [L2, CO3] [5M]
b) .Write a C program to calculate factorial of a given number using recursive [L2, CO3] [5M]
function
Convert the following infix expression to its equivalent postfix expression using a [L3, CO3] [10M]
7. stack. Show the step-by-step process, including the state of the stack and the
generated postfix expression at each stage:
X * (Y + Z) - W / V
Evaluate the following postfix expression using a stack: [L3, CO3] [10M]
8.
10 3 2 ^ * 4 -
(Assume ^ represents exponentiation). Show the state of the stack after each
operation. What is the final evaluated value? Explain why postfix evaluation is
generally simpler for computers compared to infix evaluation.
Explain how stack is used in recursive function with an example [L2, CO3] [10M]
9.
UNIT-IV
QUEUES
1. a) Define Queue [L1, CO4] [2M]
b) Give the Abstract Data Type(ADT) of Queue [L1, CO4] [2M]
c) What are the operations that can be done on Queue? [L1, CO4] [2M]
d) Mention the constraints for performing Enqueue and Dequeue Operations [L1, CO4] [2M]
e) List out the applications of Queue. [L1, CO4] [2M]
2. a) Write and explain the algorithms for Enqueue and Dequeue operations [L3, CO4] [5M]
b) Explain what happens if a Enquque operation is attempted when the Queue is full [L2, CO4] [5M]
or a Dequeue operation is attempted when the queue is empty.
3. a) Illustrate the step-by-step process of performing the following operations on [L2, CO4] [5M]
an initially empty Queue that can hold a maximum of 8 elements:
1. Enqueue(10)
2. Enqueue (20)
3. Dequeue()
4. Enqueue (30)
5. Enqueue (40)
6. Dequeue ()
7. Enqueue (50)
8. Enqueue (60)
Clearly indicate the state of the Queue after each operation.
4. Illustrate application of Queue in breadth first search algorithm with an example [L3, CO4] [10M]
5. Explain in detail about Double ended Queue and scheduling of jobs using Queue [L2, CO4] [10M]
6. a) Explain any two applications Queue in detail [L2, CO4] [5M]
b) Write about operations performed on Dequeue [L2, CO4] [5M]
UNIT-V
TREES and Hasing
1. a) Define a binary tree [L1, CO5] [2M]
b) What is a binary search tree (BST)? [L1, CO5] [2M]
c) What are the properties of a BST? [L1, CO5] [2M]
d) What is a height-balanced tree? [L1, CO5] [2M]
e) Define hashing and write its purpose in data structures [L1, CO5] [2M]
2. a) Explain the concept of a binary search tree (BST). Discuss the insertion and [L3, CO5] [5M]
deletion operations in a BST
b) Explain different tree traversal algorithms (Preorder, Inorder, Postorder) [L2, CO5] [5M]
with suitable examples
3. Explain the concept of a binary search tree (BST). Discuss the insertion, [L2, CO5] [5M]
deletion, and searching operations in a BST with suitable examples.
4. Explain the concept of hash tables and their implementation with suitable [L3, CO5] [10M]
examples.
5. Explain different collision resolution techniques in hashing (e.g., separate [L2, CO5] [10M]
chaining, open addressing) with examples.
6. a) Explain different hashing techniques (e.g., division method, multiplication [L2, CO5] [5M]
method)
b) Compare and contrast static and dynamic hashing [L2, CO5] [5M]