Download Course Name : DATA STRUCTURES

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Lattice model (finance) wikipedia , lookup

Quadtree wikipedia , lookup

B-tree wikipedia , lookup

Red–black tree wikipedia , lookup

Interval tree wikipedia , lookup

Binary tree wikipedia , lookup

Binary search tree wikipedia , lookup

Transcript
Department of Computer Science and Engineering
Course Name
: DATA STRUCTURES
Course Number :
Course Designation: Core
Prerequisites
: C Programming
II B Tech – I Semester
(2015-2016)
THOTA PANDU RANGA
2
SYLLABUS
Unit – I
Unit – II
Unit – III
Introduction: What is data structure, Types of data structures, Static and Dynamic
representation of data structure and comparison. Strings:String definition, String built-in
functions (strlen(),strcpy(),strcat(),strcmp(),strrev()), Strings and Pointers (Ch-3,T3)
Stacks: Stacks definition, operations on stacks, Representation and evaluation of
expressions using Infix, Prefix and Postfix, Algorithms for conversions and evaluations of
expressions from infix to prefix and postfix using stack.
.
Trees: Basic terminology, Types of trees: Binary Tree: terminology, Complete and Full
Binary Tree, Extended Binary Trees, Threaded Binary Trees and In order Threading.
Representation of Trees using Arrays and Linked lists (advantages and disadvantages).
Tree Traversal and Representation of Algebraic expressions; Algorithms for Tree
Traversals.
.
Advanced concepts on trees: Representation and Creation of Binary Search Trees (BST),
Algorithm for Inserting, deleting and Searching in BST. Representation and advantages of
AVL Trees, Algorithms on AVL Trees-Insertion, Rotation and Deletion. Definition and
advantages of B-trees, B + Trees, Red-Black Trees, M-way trees with examples.
Unit – IV
Graphs-Basic terminology, Representation of graphs: sequential representation
(Adjacency, Path Matrix) Linked representation.
Graph Traversals-Breadth First Search, Depth First Search with algorithms. Definition and
properties of Spanning Tree, Minimum Spanning Tree, Dijkstra Algorithms.
Unit – V
Hashing: General Idea, Hash Functions, Separate Chaining ,Open Addressing-Linear
probing, Quadratic Probing, Double Hashing, Rehashing, Extensible Hashing, Collisions
in Hashing, Implementation of Dictionaries
.
3
Text Books:
1. Data Structures, Seymour Lipschutz, Schaum’s Outlines, Tata McGraw-Hill, Special Second
Edition.
2. Data Structures, A Pseudo code Approach with C, Richard F.Gillberg & Behrouz A.
Forouzan, Cengage Learning, India Edition, Second Edition, 2005.
Reference Books:
1. “Data Structures Using C and C++”, Aaron M. Tenenbaum,Yedidyah Langsam and Moshe J.
Augenstein PHI Learning Private Limited, Delhi India.
2. “Fundamentals of Data Structures”, Horowitz and Sahani, Galgotia Publications Pvt Ltd
Delhi India.
3. Data Structure Using C, A.K. Sharma , Pearson Education India.
4. “Data Structure Using C and C++”, Rajesh K. Shukla, Wiley Dreamtech Publication.
5. “Data Structures”, Lipschutz, Schaum’s Outline Series, Tata Mcgraw-hill Education (India)
Pvt. Ltd .
6. “Data Structures and Algorithms in C++”, Michael T. Goodrich, Roberto Tamassia, David M.
Mount, Wiley India.
Websites References
1.
https://www.dsalgo.com
2.
https:// www.quora.com
3.
https://discuss.codechef.com/
4
Time Table
Room No:
Class
Hour
Time
1
9:00 09:50
2
09.50 –
10:40
W.E.F:
3
10:40 –
11:30
4
5
6
7
8
11:30 –
12: 20
1:00 –
1:50
1:50 –
2:40
2:40 –
3:30
3:30 –
4.20
MON
THU
FRI
SAT
LUNCH BREAK
WED
12:20 – 1:00
TUE
5
PROGRAM EDUCATIONAL OBJECTIVES (PEO’s)
PEO1
The Graduates are employable as software professionals in reputed industries.
PEO2
The Graduates analyze problems by applying the principles of computer science,
mathematics and scientific investigation to design and implement industry
accepted solutions using latest technologies.
PEO3
The Graduates work productively in supportive and leadership roles on
multidisciplinary teams with effective communication and team work skills with
high regard to legal and ethical responsibilities.
PEO4
The Graduates embrace lifelong learning to meet ever changing developments in
computer science and Engineering.
PROGRAM OUTCOMES (PO’s)
PO1
An ability to communicate effectively and work on multidisciplinary teams
PO2
An ability to identify, formulate and solve computer system problems with
professional and ethical responsibility.
PO3
A recognition of the need for, and an ability to engage in life-long learning to use
the latest techniques, skills and modern engineering tools
PO4
The broad education necessary to understand the impact of engineering solutions
in a global, economic, environmental and social context
PO5
An ability to apply knowledge of mathematics, science, and computing to analyze,
design and implement solutions to the realistic problems.
PO6
An ability to apply suitable process with the understanding of software
development practice.
6
DATA STRUCTURES
COURSE OUTCOMES
1. Learn about primary data structures.
2. Represent the problem in a form of graphs and trees.
3. Apply the concept of graphs and trees with respect to search,insert,delete
in a network
4. To know about dictionaries and hashing methods to use the data
structures.
MAPPING OF COURSE OUT COMES WITH
PO’s & PEO’s
Course Outcomes
PO’s
PEO’s
CO1
PO2
PE02
CO2
PO5
PE02
CO3
PO5
PE05
C04
PO6
PE05
7
COURSE SCHEDULE
Distribution of Hours Unit – Wise
Unit
I
II
III
IV
Chapters
Topic
Introduction: What is data structure,
Types of data structures, Static and
Dynamic representation of data structure
and
comparison.
Strings:String
definition, String built-in functions
(strlen(),strcpy(),strcat(),strcmp(),strrev()),
Strings and Pointers (Ch-3,T3) Stacks:
Stacks definition, operations on stacks,
Representation
and
evaluation
of
expressions using Infix, Prefix and
Postfix, Algorithms for conversions and
evaluations of expressions from infix to
prefix and postfix using stack.
.
Trees: Basic terminology, Types of trees:
Binary Tree: terminology, Complete and
Full Binary Tree, Extended Binary Trees,
Threaded Binary Trees and In order
Threading. Representation of Trees using
Arrays and Linked lists (advantages and
disadvantages). Tree Traversal and
Representation of Algebraic expressions;
Algorithms for Tree Traversals.
Advanced
concepts
on
trees:
Representation and Creation of Binary
Search Trees (BST), Algorithm for
Inserting, deleting and Searching in BST.
Representation and advantages of AVL
Trees,
Algorithms on AVL TreesInsertion,
Rotation
and
Deletion.
Definition and advantages of B-trees, B +
Trees, Red-Black Trees, M-way trees with
examples.
Graphs-Basic terminology, Representation
of graphs: sequential representation
(Adjacency,
Path
Matrix)
Linked
representation.
Total No.
of Hours
Book1
Book2
Chapters 1,3,6
Chapters 1,3,4
11
Chapter 7
Chapters 6
11
Chapter 7
Chapters .7,8,10
11
Chapters 8
Chapter 11
11
8
Graph Traversals-Breadth First Search,
Depth First Search with algorithms.
Definition and properties of Spanning
Tree, Minimum Spanning Tree, Dijkstra
Algorithms.
V
Hashing: General Idea, Hash Functions,
Separate Chaining ,Open AddressingLinear probing, Quadratic Probing,
Double Hashing, Rehashing, Extensible
Hashing,
Collisions
in
Hashing,
Implementation of Dictionaries
.
Chapter 13
10
Contact classes for Syllabus coverage
54
Revision classes :1 per unit
Online Quiz : 1 per mid
Descriptive Tests : 02 (Before Mid Examination)
9
Number of Hours / lectures available in this Semester / Year
63
The number of topic in every unit is not the same – because of the variation, all the units
have an unequal distribution of hours
Lecture Plan
S. No.
Topic
Unit-1
1
What is data structure, Types of data structures, Static and
Dynamic representation of data structure and comparison.
2
2
Strings:String
definition,
String
(strlen(),strcpy(),strcat(),strcmp(),strrev())
1
3
Strings and Pointers
1
4
Stacks definition, operations on stacks
2
5
Representation and evaluation of expressions using Infix, Prefix
2
built-in
functions
9
and Postfix
6
Algorithms for conversions and evaluations of expressions from
infix to prefix and postfix using stack
3
Total No. of classes
11
Unit-2
1
Trees: Basic terminology, Types of trees
1
2
Binary Tree: terminology,
1
3
Complete and Full Binary Tree, Extended Binary Trees
1
4
Threaded Binary Trees and In order Threading
2
5
Representation of Trees using Arrays and Linked lists (advantages
and disadvantages)
2
6
Tree Traversal and Representation of Algebraic expressions
2
7
Algorithms for Tree Traversals
2
Total No. of classes
11
Unit-3
1
Representation and Creation of Binary Search Trees (BST)
1
2
Algorithm for Inserting, deleting and Searching in BST
2
3
Representation and advantages of AVL Trees
2
4
Algorithms on AVL Trees-Insertion, Rotation and Deletion
3
5
Definition and advantages of B-trees, B + Trees, Red-Black Trees,
M-way trees with examples.
3
Total No. of classes
11
Unit-4
1
Graphs-Basic terminology
1
2
Representation of graphs: sequential representation (Adjacency,
Path Matrix) Linked representation.
3
10
3
Graph Traversals-Breadth First Search, Depth First Search with
algorithms
3
4
Definition and properties of Spanning Tree, Minimum Spanning
Tree
2
5
Dijkstra Algorithms
2
Total No. of classes
11
Unit-5
1
Hashing: General Idea
2
2
Hash Functions
2
Open Addressing-Linear probing, Quadratic Probing, Double
3
4
Hashing, Rehashing, Extensible Hashing, Collisions in Hashing,
3
Implementation of Dictionaries
3
Total No. of classes
10
Unit I
11
Unit II
11
Unit III
11
Unit IV
11
Unit V
10
--------------------------------Total
54
--------------------------------
11
Date of Unit Completion & Remarks
Unit – 1
Date
:
__ / __ / __
Remarks:
________________________________________________________________________
________________________________________________________________________
Unit – 2
Date
:
__ / __ / __
Remarks:
________________________________________________________________________
________________________________________________________________________
Unit – 3
Date
:
__ / __ / __
Remarks:
________________________________________________________________________
________________________________________________________________________
Unit – 4
Date
:
__ / __ / __
Remarks:
________________________________________________________________________
12
________________________________________________________________________
Unit – 5
Date
:
__ / __ / __
Remarks:
________________________________________________________________________
________________________________________________________________________
Unit Wise Assignments (With different Levels of thinking (Blooms Taxonomy))
Note: For every question please mention the level of Blooms taxonomy
Unit – 1
1.
Define Data Strucutres and explain the different data structures
2.
Define ADTs Queue, Stack
3.
4.
L2
L2
Convert the following infix expressions to equivalent prefix and postfix expressions
i)a+b+c b)a+b*c c)(a+b)*c d)a*b*c/d/+e e)((a+b)*(c+d)/f)
L3
Evaluate the following postfix expression.
a) 2 3 5 * + b) 9 9 9 9 + - * c)2 3 + 5 - d)3 0 1 * 1
L4
Unit – 2
1.
2.
Draw a tree and label it which include degree,height,complete etc..
L2
Draw a binary tree containing your subject names as nodes and traverse it inorder,
preorder and postorder.
L4
Draw trees for the expressions :i) a+b*c, ii)(a+b)*(c/d+e)
L4
3.
4.
Why threading of trees is done? Explain the different threading methods. L2
13
Unit – 3
1.
Define a BST? Draw a BST for the marks secured by you in the last semester end
examinations then traverse it inorder, preorder and post order. L2
2.
Make changes to some of the values to the BST drawn in the Question 1. L4
3.
4.
Define AVL tree. List the advantages over BST. Draw an AVL tree for the marks
secured by you in the end exam. L4
Definition and advantages of B-trees, B + Trees, Red-Black Trees, M-way trees with
examples.
L4
Unit – 4
1.
Draw a graph and represent it in different ways such as adjacency matrix, adjacency
list
L2
2.
Draw a graph then traverse it in BFS and DFS
3.
Explain the concept Spanning tree and minimum Spanning tree for a given graph.. L2
4.
Develop a program for printing the minimum spanning tree for a given graph L2
Unit – 5
1.
What is Hashing? Explain its advanateges over other data structures. L2
2.
Explain about Open addressing. L2
3.
Explain the various Collision resolution techniques L2
4.
Write a program to store any 10 names using appropriate hash function and then
search for a given name. L2
14
Unit Wise Case Studies (With different Levels of thinking (Blooms Taxonomy))
Note: For every Case Study please mention the level of Blooms taxonomy
CASE STUDY- I
A Multi-storied building needs to be wired so that the all the rooms to be connected with least
length of wire for lighting purpose. Develop a solution for the problem .
L5
CASE Study- II
An international sports event is organized in a a Metropolitan city. Develop a solution for
parking vehicles of people attending the event
L5
Unit Wise Important Questions (With different Levels of thinking (Blooms Taxonomy))
Note: For every question please mention the level of Blooms taxonomy
Unit – 1
1.
Write a program to implement Stack using Array
L3
2.
Write a Program to implement Queue using Array.
L3
3.
Write a program to convert an infix expression to equivalent postfix and prefix L3
4.
Write a program to evaluate a postfix expression.
L3
Unit – 2
1.
Write a program to determine whether the given tree is complete binary
tree or not. L3
2.
Write a program to implement a binary tree using Array. L3
3.
Write a program to create a BST tree and search for a given element in
it. L3
4.
Why threading of trees is done ? Explain the explain the advantages. L3
Unit – 3
15
1.
Write a program to create an AVL tree for the names of your family
members and then search for a given name. L3
2.
Write a program to create a binary search tree and traverse it in inorder,
pre order and post order. L3
3.
Write a menu driven program to create a binary search tree and perform
the following operations. Insert, delete, and traverse. L3
4.
Definition and advantages of B-trees, B + Trees, Red-Black Trees, M-way trees with
examples L3
Unit – 4
1.
Write a program to represent a graph using adjacency matrix and linked
representation . L3
2.
Write a program to traverse a given graph using BFS method. L3
3.
Write a program to traverse a given graph using DFS method. L3
Write a program to display Spanning tree for a given graph. L3
4.
Unit – 5
1.
What is Hashing ? What is the advantages over the other data structures.
L2
2.
Write a program to impelement open addressing. L3
3.
Write a program to implement Separate Chaining L3
4.
Write a program to implement a Dictionary. L3
Unit Wise Multiple Choice Questions for CRT & Competitive Examinations
16
UNIT-I
MCQs on string functions with answers
1. What is the output of this C code?
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
#include <stdio.h>
int main()
{
char *str = "hello, world";
char *str1 = "hello, world";
if (strcmp(str, str1))
printf("equal");
else
printf("unequal");
}
a) equal
b) unequal
c) Compilation error
d) Depends on the compiler
Answer: b
2. What is the output of this C code?
1.
2.
3.
4.
5.
6.
7.
8.
#include <stdio.h>
int main()
{
char *str = "hello";
char str1[5];
strcpy(str, str1);
printf("%s", str1);
}
a) Compilation error
b) Undefined behaviour
c) hello, world
d) hello, wo 9
Answer: d
3. What is the output of this C code?
1.
2.
3.
4.
#include <stdio.h>
#include <string.h>
int main()
{
17
5.
6.
7.
8.
9.
char *str = "hello, world";
char str1[9];
strncpy(str1, str, 9);
printf("%s %d", str1, strlen(str1));
}
a) hello, world 11
b) hello, wor 9
c) Undefined behaviour
d) Compilation error
Answer: c
4. What is the output of this C code?
1.
2.
3.
4.
5.
6.
7.
#include <stdio.h>
int main()
{
char *str = "hello, world\n";
printf("%d", strlen(str));
}
a) Compilation error
b) Undefined behaviour
c) 13
d) 11
Answer: c
5. What is the output of this C code?
1.
2.
3.
4.
5.
6.
7.
8.
#include <stdio.h>
int main()
{
char str[11] = "hello";
char *str1 = "world";
strcat(str, str1);
printf("%s %d", str, str[10]);
}
a) helloworld 0
b) helloworld anyvalue
c) worldhello 0
d) Segmentation fault/code crash
Answer: a
6. Strcat function adds null character
a) Only if there is space
18
b) Always
c) Depends on the standard
d) Depends on the compiler
Answer: b
7. What is the output of this C code?
1.
2.
3.
4.
5.
6.
7.
8.
#include <stdio.h>
int main()
{
char str[10] = "hello";
char *str1 = "world";
strncat(str, str1, 9);
printf("%s", str);
}
a) helloworld
b) Undefined behaviour
c) helloworl
d) hellowor
Answer: a
MCQs on stacks with answers
1. The postfix form of the expression (A+ B)*(C*D- E)*F / G is?
a) AB+ CD*E - FG /**
b) AB + CD* E - F **G /
c) AB + CD* E - *F *G /
d) AB + CDE * - * F *G /
ANSWER: a) AB+ CD*E - FG /**
2. The data structure required to check whether an expression contains balanced
parenthesis is?
a) Stack
b) Queue
c) Array
d) Tree
ANSWER: a) Stack
3. What data structure would you mostly likely see in a non recursive implementation of a
recursive algorithm?
a) LinkList
b) Stack
c) Queue
d) Tree
19
ANSWER: b) Stack
4. The process of accessing data stored in a serial access memory is similar to manipulating
data on a ------?
a) Heap
b) Binary Tree
c) Array
d) Stack
ANSWER: d) Stack
5. The postfix form of A*B+C/D is?
a) *AB/CD+
b) AB*CD/+
c) A*BC+/D
d) ABCD+/*
ANSWER: b) AB*CD/+
6. Which data structure is needed to convert infix notation to postfix notation?
a) Branch
b) Tree
c) Queue
d) Stack
ANSWER: d) Stack
7. The prefix form of A-B/ (C * D ⋀ E) is?
a) -/*⋀ACBDE
b) -ABCD*⋀DE
c) -A/B*C⋀DE
d) -A/BC*⋀DE
ANSWER: c) -A/B*C⋀DE
8. What is the result of the following operation
Top (Push (S, X))
a) X
b) Null
c) S
d) None
ANSWER: a) X
9. The prefix form of an infix expression p + q - r * t is?
a) + pq - *rt
b) - +pqr * t
c) - +pq * rt
d) - + * pqrt
ANSWER: c) - +pq * rt
20
10. Which data structure is used for implementing recursion?
a) Queue
b) Stack
c) Array
d) List
ANSWER: b) Stack
11. The result of evaluating the postfix expression 5, 4, 6, +, *, 4, 9, 3, /, +, * is?
a) 600
b) 350
c) 650
d) 588
ANSWER: b) 350
12. Convert the following infix expressions into its equivalent postfix expressions
(A + B ⋀D)/(E - F)+G
a) (A B D ⋀ + E F - / G +)
b) (A B D +⋀ E F - / G +)
c) (A B D ⋀ + E F/- G +)
d) None
ANSWER: a) (A B D ⋀ + E F - / G +)
13. Convert the following Infix expression to Postfix form using a stack
x + y * z + (p * q + r) * s, Follow usual precedence rule and assume that the expression is legal.
a) xyz*+pq*r+s*+
b) xyz*+pq*r+s+*
c) xyz+*pq*r+s*+
d) none
ANSWER: a) xyz*+pq*r+s*+
14. Which of the following statement(s) about stack data structure is/are NOT correct?
a) Stack data structure can be implemented using linked list
b) New node can only be added at the top of the stack
c) Stack is the FIFO data structure
d) The last node at the bottom of the stack has a NULL link
ANSWER: c) Stack is the FIFO data structure
15. Consider the linked list implementation of a stack. Which of the following node is
considered as Top of the stack?
a) First node
b) Last node
c) Any node
d) Middle node
ANSWER: a) First node
21
16. Consider the following operation performed on a stack of size 5.
Push(1);
Pop();
Push(2);
Push(3);
Pop();
Push(4);
Pop();
Pop();
Push(5);
After the completion of all operation, the no of element present on stack are
a) 1
b) 2
c) 3
d) 4
ANSWER: a) 1
17. Which of the following is not an inherent application of stack?
a) Reversing a string
b) Evaluation of postfix expression
c) Implementation of recursion
d) Job scheduling
ANSWER: d) Job scheduling
18. Which of the following operation take worst case linear time in the array
implementation of stack?
a) Push
b) Pop
c) IsEmpty
d) None
ANSWER: d) None
19. The type of expression in which operator succeeds its operands is?
a) Infix Expression
b) pre fix Expression
c) postfix Expression
d) None
ANSWER: c) postfix Expression
20. Which of the following application generally use a stack?
a) Parenthesis balancing program
b) Syntax analyzer in compiler
c) Keeping track of local variables at run time
d) All of the above
ANSWER: d) All of the above
22
21. Consider the following array implementation of stack:
#define MAX 10
Struct STACK
{
Int arr [MAX];
Int top = -1;
}
If the array index starts with 0, the maximum value of top which does not cause stack overflow
is?
a) 8
b) 9
c) 10
d) 11
ANSWER: a) 8
22. What is the minimum number of stacks of size n required to implement a queue of size
n?
a) One
b) Two
c) Three
d) Four
ANSWER: b) Two
23. Assume that the operators +,-, X are left associative and ⋀ is right associative. The
order of precedence (from highest to lowest) is ⋀, X, +, -. The postfix expression
corresponding to the infix expression a + b X c – d ⋀ e ⋀ f is
a) abc X+ def ⋀ ⋀ b) abc X+ de⋀f⋀ c) ab+c Xd – e ⋀f⋀
d) -+aXbc⋀ ⋀def
ANSWER: a) abc X+ def ⋀ ⋀ -
24. If the elements “A”, “B”, “C” and “D” are placed in a stack and are deleted one at a
time, in what order will they be removed?
a) ABCD
b) DCBA
c) DCAB
d) ABDC
ANSWER: b) DCBA
23
25. Consider the usual implementation of parentheses balancing program using stack.
What is the maximum number of parentheses that will appear on stack at any instance of
time during the analysis of ( ( ) ( ( ) ) ( ( ) ) )?
a) 1
b) 2
c) 3
d) 4
ANSWER: c) 3
UNIT-II & III
MCQs on Tree with answers
1. The height of a BST is given as h. Consider the height of the tree as the no. of edges in
the longest path from root to the leaf. The maximum no. of nodes possible in the tree is?
a) 2h-1 -1
b) 2h+1 -1
c) 2h +1
d) 2h-1 +1
ANSWER: B
2. The no of external nodes in a full binary tree with n internal nodes is?
a) n
b) n+1
c) 2n
d) 2n + 1
ANSWER: B
3. The difference between the external path length and the internal path length of a binary
tree with n internal nodes is?
a) 1
b) n
c) n + 1
d) 2n
ANSWER: D
4. Suppose a binary tree is constructed with n nodes, such that each node has exactly either
zero or two children. The maximum height of the tree will be?
24
a) (n+1)/2
b) (n-1)/2
c) n/2 -1
d) (n+1)/2 -1
ANSWER: B
5. Which of the following statement about binary tree is CORRECT?
a) Every binary tree is either complete or full
b) Every complete binary tree is also a full binary tree
c) Every full binary tree is also a complete binary tree
d) A binary tree cannot be both complete and full
ANSWER: C
6. Suppose we have numbers between 1 and 1000 in a binary search tree and want to
search for the number 363. Which of the following sequence could not be the sequence of
the node examined?
a) 2, 252, 401, 398, 330, 344, 397, 363
b) 924, 220, 911, 244, 898, 258, 362, 363
c) 925, 202, 911, 240, 912, 245, 258, 363
d) 2, 399, 387, 219, 266, 382, 381, 278, 363
ANSWER: C
7. In full binary search tree every internal node has exactly two children. If there are 100
leaf nodes in the tree, how many internal nodes are there in the tree?
a) 25
b) 49
c) 99
d) 101
ANSWER: C
8. Which type of traversal of binary search tree outputs the value in sorted order?
a) Pre-order
b) In-order
c) Post-order
d) None
ANSWER: B
9. Suppose a complete binary tree has height h>0. The minimum no of leaf nodes possible
in term of h is?
a) 2h -1
25
b) 2h -1 + 1
c) 2h -1
d) 2h +1
ANSWER: C
10. A 2-3 is a tree such that
a) All internal nodes have either 2 or 3 children
b) All path from root to leaves have the same length
The number of internal nodes of a 2-3 tree having 9 leaves could be
a) 4
b) 5
c) 6
d) 7
ANSWER: A, D
11. If a node having two children is to be deleted from binary search tree, it is replaced by
its
a) In-order predecessor
b) In-order successor
c) Pre-order predecessor
d) None
ANSWER: B
12. A binary search tree is formed from the sequence 6, 9, 1, 2, 7, 14, 12, 3, 8, 18. The
minimum number of nodes required to be added in to this tree to form an extended binary
tree is?
a) 3
b) 6
c) 8
d) 11
ANSWER: D
13. In a full binary tree, every internal node has exactly two children. A full binary tree
with 2n+1 nodes contains
a) n leaf node
b) n internal nodes
c) n-1 leaf nodes
d) n-1 internal nodes
ANSWER: B
26
14. the run time for traversing all the nodes of a binary search tree with n nodes and
printing them in an order is
a) O(nlg(n))
b) O(n)
c) O(√n)
d) O(log(n))
ANSWER: B
15. When a binary tree is converted in to an extended binary tree, all the nodes of a binary
tree in the external node becomes
a) Internal nodes
b) External nodes
c) Root nodes
d) None
ANSWER: A
16. If n numbers are to be sorted in ascending order in O(nlogn) time, which of the
following tree can be used
a) Binary tree
b) Binary search tree
c) Max-heap
d) Min-heap
ANSWER: D
17. If n elements are sorted in a binary search tree. What would be the asymptotic
complexity to search a key in the tree?
a) O(1)
b) O(logn)
c) O(n)
d) O(nlogn)
ANSWER: C
18. If n elements are sorted in a balanced binary search tree. What would be the asymptotic
complexity to search a key in the tree?
a) O(1)
b) O(logn)
c) O(n)
d) O(nlogn)
ANSWER: B
27
19. The minimum number of elements in a heap of height h is
a) 2h+1
b) 2h
c) 2h -1
d) 2h-1
ANSWER: B
20. The maximum number of elements in a heap of height h is
a) 2h+1 -1
b) 2h
c) 2h -1
d) 2h -1
ANSWER: A
21. A threaded binary tree is a binary tree in which every node that does not have right
child has a thread to its
a) Pre-order successor
b) In-order successor
c) In-order predecessor
d) Post-order successor
ANSWER: B
22. In which of the following tree, parent node has a key value greater than or equal to the
key value of both of its children?
a) Binary search tree
b) Threaded binary tree
c) Complete binary tree
d) Max-heap
ANSWER: D
23. A binary tree T has n leaf nodes. The number of nodes of degree 2 in T is
a) log2n
b) n-1
c) n
d) 2n
ANSWER: B
24. A binary search tree is generated by inserting in order the following integers:
50, 15, 62, 5, 20, 58, 91, 3, 8, 37, 60, 24
The number of the node in the left sub-tree and right sub-tree of the root, respectively, is
28
a) (4, 7)
b) (7, 4)
c) (8, 3)
d) (3, 8)
ANSWER: B
B and B+ Trees
1. Consider a B+-tree in which the maximum number of keys in a node is 5. What is the
minimum number of keys in any non-root node?
A1
B2
C3
D4
ANSWER: B
2. Which one of the following is a key factor for preferring B-trees to binary search trees
for indexing database relations?
A Database relations have a large number of records
B Database relations are sorted on the primary key
C B-trees require less memory than binary search trees
D Data transfer form disks is in blocks.
ANSWER: D
3. B+ trees are preferred to binary trees in databases because
A Disk capacities are greater than memory capacities
B Disk access is much slower than memory access
C Disk data transfer rates are much less than memory data transfer rates
D Disks are more reliable than memory
ANSWER: B
4. Which of the following is FALSE about B/B+ tree
A B/B+ trees grow upward while Binary Search Trees grow downward.
B Time complexity of search operation in B/B+ tree is better than Red Black Trees in general.
C Number of child pointers in a B/B+ tree node is always equals to number of keys in it plus
29
one.
A B/B+ tree is defined by a term minimum degree. And minimum degree depends on hard
D
disk block size, key and address sizes.
ANSWER: B
5. A B-tree of order 4 is built from scratch by 10 successive insertions. What is the
maximum number of node splitting operations that may take place?
A3
B4
C5
D6
ANSWER: C
6. The order of a leaf node in a tree B+ ? is the maximum number of (value, data record
pointer) pairs it can hold. Given that the block size is 1K bytes, data record pointer is 7
bytes long, the value field is 9 bytes long and a block pointer is 6 bytes long, what is the
order of the leaf node?
A 63
B 64
C 67
D 68
ANSWER: A
7. The order of an internal node in a B+ tree index is the maximum number of children it
can have. Suppose that a child pointer takes 6 bytes, the search field value takes 14
bytes, and the block size is 512 bytes. What is the order of the internal node?
A 24
B 25
C 26
D 27
ANSWER: C
8. Consider the following 2-3-4 tree (i.e., B-tree with a minimum degree of two) in which
each data item is a letter. The usual alphabetical ordering of letters is used in constructing
the tree.
30
What is the result of inserting G in the above
tree?
A)
B)
C)
D) None of the above
AA
BB
CC
DD
ANSWER: B
9. A B+ -tree index is to be built on the Name attribute of the relation STUDENT. Assume
that all student names are of length 8 bytes, disk block are size 512 bytes, and index
pointers are of size 4 bytes. Given this scenario, what would be the best choice of the
degree (i.e. the number of pointers per node) of the B+ -tree?
31
A 16
B 42
C 43
D 44
ANSWER: A
10. With reference to the B+ tree index of order 1 shown below, the minimum number of nodes
(including the root node) that must be fetched in order to satisfy the following query: “Get all
records with a search key greater than or equal to 7 and less than 15” is ________
A4
B5
C6
D7
ANSWER: B
11. Consider B+ tree in which the search key is 12 bytes long, block size is 1024 bytes, record pointer is
10 bytes long and block pointer is 8 bytes long. The maximum number of keys that can be
accommodated in each non-leaf node of the tree is
A 49
B 50
C 51
D 52
ANSWER: B
UNIT-IV
MCQs on Graphs with answers
32
1. Which of the following is an advantage of adjacency list representation over adjacency
matrix representation of a graph?
A In adjacency list representation, space is saved for sparse graphs.
DFS and BSF can be done in O(V + E) time for adjacency list representation. These
B operations take O(V^2) time in adjacency list representation. Here is V and E are number of
vertices and edges respectively.
C Adding a vertex in adjacency list representation is easier than adjacency matrix representation.
D All of the above
ANSWER: D
2. The degree sequence of a simple graph is the sequence of the degrees of the nodes in the
graph in decreasing order. Which of the following sequences can not be the degree
sequence of any graph? I. 7, 6, 5, 4, 4, 3, 2, 1 II. 6, 6, 6, 6, 3, 3, 2, 2 III. 7, 6, 6, 4, 4, 3, 2, 2
IV. 8, 7, 7, 6, 4, 2, 1, 1
A I and II
B III and IV
C IV only
D II and IV
ANSWER: D
3. The time complexity of computing the transitive closure of a binary relation on a set of
n elements is known to be:
A O(n)
B O(nLogn)
C O(n ^ (3/2))
D O(n^3)
ANSWER: D
4. The most efficient algorithm for finding the number of connected components in an
undirected graph on n vertices and m edges has time complexity. (A) (n) (B) (m) (C)
(m + n) (D) (mn)
AA
BB
CC
DD
ANSWER: C
33
5. Consider an undirected unweighted graph G. Let a breadth-first traversal of G be done
starting from a node r. Let d(r, u) and d(r, v) be the lengths of the shortest paths from r
to u and v respectively, in G. lf u is visited before v during the breadth-first traversal,
which of the following statements is correct?
A d(r, u) < d (r, v)
B d(r, u) > d(r, v)
C d(r, u) <= d (r, v)
D None of the above
ANSWER: C
6. How many undirected graphs (not necessarily connected) can be constructed out of a
given set V= {V 1, V 2,…V n} of n vertices ?
A n(n-l)/2
B 2^n
C n!
D 2^(n(n-1)/2)
ANSWER: D
7. Which of the following statements is/are TRUE for an undirected graph? P: Number of
odd degree vertices is even Q: Sum of degrees of all vertices is even
A P Only
B Q Only
C Both P and Q
D Neither P nor Q
ANSWER: C
8. Consider an undirected random graph of eight vertices. The probability that there is an
edge between a pair of vertices is 1/2. What is the expected number of unordered cycles
of length three?
A 1/8
B1
C7
D8
ANSWER: C
34
9. Given an undirected graph G with V vertices and E edges, the sum of the degrees of all
vertices is
AE
B 2E
CV
D 2V
ANSWER: B
10. How many undirected graphs (not necessarily connected) can be constructed out of a
given set V = {v1, v2, ... vn} of n vertices?
A n(n-1)/2
B 2n
C n!
D 2n(n-1)/2
ANSWER: D
UNIT-V
MCQs on Hash with answers
1. A hash table of length 10 uses open addressing with hash function h(k)=k mod 10, and
linear probing. After inserting 6 values into an empty hash table, the table is as shown
below.
35
Which one of the following choices gives a possible order in which the key values could
have been inserted in the table?
A 46, 42, 34, 52, 23, 33
B 34, 42, 23, 52, 33, 46
C 46, 34, 42, 23, 52, 33
D 42, 46, 33, 23, 34, 52
ANSWER: C
2. How many different insertion sequences of the key values using the same hash function
and linear probing will result in the hash table shown above?
A 10
B 20
C 30
D 40
ANSWER: C
3. The keys 12, 18, 13, 2, 3, 23, 5 and 15 are inserted into an initially empty hash table of
length 10 using open addressing with hash function h(k) = k mod 10 and linear probing.
What is the resultant hash table?
AA
BB
CC
DD
ANSWER: C
36
4. Consider a hash table of size seven, with starting index zero, and a hash function (3x +
4)mod7. Assuming the hash table is initially empty, which of the following is the
contents of the table when the sequence 1, 3, 8, 10 is inserted into the table using closed
hashing? Note that ‘_’ denotes an empty location in the table.
A 8, _, _, _, _, _, 10
B 1, 8, 10, _, _, _, 3
C 1, _, _, _, _, _,3
D 1, 10, 8, _, _, _, 3
ANSWER: B
5. Given the following input (4322, 1334, 1471, 9679, 1989, 6171, 6173, 4199) and the hash
function x mod 10, which of the following statements are true? i. 9679, 1989, 4199 hash
to the same value ii. 1471, 6171 has to the same value iii. All elements hash to the same
value iv. Each element hashes to a different value.
A i only
B ii only
C i and ii only
D iii or iv
ANSWER: C
6. Consider a hash table with 100 slots. Collisions are resolved using chaining. Assuming
simple uniform hashing, what is the probability that the first 3 slots are unfilled after
the first 3 insertions?
A (97 × 97 × 97)/1003
B (99 × 98 × 97)/1003
C (97 × 96 × 95)/1003
D (97 × 96 × 95)/(3! × 1003)
ANSWER: A
7. Which one of the following hash functions on integers will distribute keys most
uniformly over 10 buckets numbered 0 to 9 for i ranging from 0 to 2020?
A h(i) =i2 mod 10
B h(i) =i3 mod 10
C h(i) = (11 ∗ i2) mod 10
D h(i) = (12 ∗ i) mod 10
37
ANSWER: B
8. Given a hash table T with 25 slots that stores 2000 elements, the load factor α for T is
__________
A 80
B 0.0125
C 8000
D 1.25
ANSWER: A
University Question Papers
Tutorial Sheet
Unit-I
38
Topics Revised
Date:
Quick Test Topics
Date:
Topics Revised
Date:
Quick Test Topics
Date:
Unit-II
Unit-III
39
Topics Revised
Date:
Quick Test Topics
Date:
Unit-IV
Topics Revised
Date:
Quick Test Topics
Date:
40
Case Study Discussed
Date:
Unit-V
Topics Revised
Date:
Quick Test Topics
Date:
TOPICS BEYOND SYLLABUS
41
Unit – 1
1.
2.
3.
4.
Unit – 2
1.
2.
3.
4.
Unit – 3
1.
2.
3.
4.
Unit – 4
1.
2.
3.
4.
Unit – 5
1.
42
2.
3.
4.
ASSESMENT OF LEARNING OBJECTIVES AND OUT COMES: DIRECT
S.No.
1
2
3
4
Blooms Taxonomy:
LEVEL 1
REMEMBERING
LEVEL 2
UNDERSTANDING
LEVEL 3
APPLYING
LEVEL 4
ANALYZING
LEVEL 5
EVALUATING
LEVEL 6
CREATING
Hall
Ticket
Number
I-Internal
Marks
Assignment
Marks
Exhibit memory of previously learned material
by recalling facts, terms, basic concepts, and
answers
Demonstrate understanding of facts and ideas
by organizing, comparing, translating,
interpreting, giving descriptions, and stating
main ideas.
Solve problems to new situations by applying
acquired knowledge, facts, techniques and rules
in a different way
Examine and break information into parts by
identifying motives or causes. Make inferences
and find evidence to support generalizations.
Present and defend opinions by making
judgments about information, validity of ideas,
or quality of work based on a set of criteria.
Compile information together in a different way
by combining elements in a new pattern or
proposing alternative solutions.
Remarks
&
Blooms
Taxonom
y
Assessme
nt
IIInternal
Marks
Assignment
Marks
Remark
s&
Blooms
Taxono
my
Assessm
ent
Avg
.
Ma
rks
43
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
44
50
51
52
53
54
55
56
57
58
59
60
ASSESMENT OF LEARNING OBJECTIVES AND OUT COMES: INDIRECT
Blooms Taxonomy:
LEVEL 1
REMEMBERING
LEVEL 2
UNDERSTANDING
LEVEL 3
APPLYING
LEVEL 4
ANALYZING
LEVEL 5
EVALUATING
LEVEL 6
CREATING
Exhibit memory of previously learned material
by recalling facts, terms, basic concepts, and
answers
Demonstrate understanding of facts and ideas
by organizing, comparing, translating,
interpreting, giving descriptions, and stating
main ideas.
Solve problems to new situations by applying
acquired knowledge, facts, techniques and rules
in a different way
Examine and break information into parts by
identifying motives or causes. Make inferences
and find evidence to support generalizations.
Present and defend opinions by making
judgments about information, validity of ideas,
or quality of work based on a set of criteria.
Compile information together in a different way
by combining elements in a new pattern or
proposing alternative solutions.
45
CSP Rubric
4
Oral
Communicati
on
3
2
1
2
1
2
( Level : 3-Excellent
Level :2-Good
Level : 1-Poor
Student speaks in phase with the given topic confidently using Audio-Visual aids.
Vocabulary is good
Student speaking without proper planning, fair usage of Audio-Visual aids.
Vocabulary is not good
Student speaks vaguely not in phase with the given topic. No synchronization
among the talk and Visual Aids
Proper structuring of the document with relevant subtitles, readability of document
is high with correct use of grammar. Work is genuine and not published anywhere
else
Information is gathered without continuity of topic, sentences were not framed
properly. Few topics are copied from other documents
Information gathered was not relevant to the given task, vague collection of
sentences. Content is copied from other documents
Student identifies most potential ethical or societal issues and tries to provide
solutions for them discussing with peers
Student identifies the societal and ethical issues but fails to provide any solutions
discussing with peers
1 Student makes no attempt in identifying the societal and ethical issues
3 Student uses appropriate methods, techniques to model and solve the problem
accurately
2 Student tries to model the problem but fails to solve the problem
1 Student fails to model the problem and also fails to solve the problem
3 Listens carefully to the class and tries to answer questions confidently
2 Listens carefully to the lecture but doesn’t attempt to answer the questions
1 Student neither listens to the class nor attempts to answer the questions
6
Technical and
analytical Skills
The program structure is well organized with appropriate use of technologies and
3 methodology. Code is easy to read and well documented. Student is able to
implement the algorithm producing accurate results
Program structure is well organized with appropriate use of technologies and
2 methodology. Code is quite difficult to read and not properly documented. Student
is able to implement the algorithm providing accurate results.
Program structure is not well organized with mistakes in usage of appropriate
1 technologies and methodology. Code is difficult to read and student is not able to
execute the program
7
Practic
al
Knowle
dge
5
Writing Skills
3
3
Social and
Ethical
Awareness
2
LEVEL
3
Content
Knowledge
1
Criteria
Student
Participat
ion
S.N
0
3 Independently able to write programs to strengthen the concepts covered in theory
2
Independently able to write programs but not able to strengthen the concepts
learned in theory
46
Not able to write programs and not able to strengthen the concepts learned in
theory
8
Understanding of
Engineering core
1
Student uses appropriate methods, techniques to model and solve the problem
accurately in the context of multidisciplinary projects
Student tries to model the problem but fails to solve the problem in the context of
2
multidisciplinary projects
Student fails to model the problem and also fails to solve the problem in the context
1 of multidisciplinary projects
3
CSP Rubric Name & Number:
S.No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Hall Ticket
Number
Rubric Assessment
Blooms Taxonomy
Assessment
Remarks
47
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Remedial Classes:
Unit Number
Unit-I
Unit-II
Unit-III
Unit-IV
Unit-V
Date Conducted
Topics Revised
48
Add-on Programmes:
1
2
3
4
Guest Lectures:
1.
2.
3.
4.
Unit Wise PPT’s:
Unit Wise lecture Notes: