CS2202::Data Structures Course Prerequisites: Course Objectives
CS2202::Data Structures Course Prerequisites: Course Objectives
: 654
CS2202::Data Structures
Course Prerequisites: Basic programming Skills (C/C++).
Course Objectives:
1. To impart the basic concepts of data structures and algorithms.
2.To understand concepts about searching and sorting techniques.
3. To construct and implement various data structures and abstract data types including lists, stacks,
queues, trees, and graphs.
4. To make understand about writing algorithms and step by step approach in solving problems
with the help of fundamental data structures.
5. To emphasize the importance of data structures in developing and implementing efficient
algorithms.
Arrays: Representation and application of Single and Multidimensional arrays, Time & Space
Complexity Analysis.
Linked Lists: Dynamic memory allocation, Singly Linked Lists, Doubly linked Lists,
Circular linked lists and Generalized linked lists, Applications of Linked list.
Stack: Stack representation and Implementation using arrays and Linked lists. Applications of
stack in Recursion, Expression conversions and evaluations.
Queues: Representation and implementation using array and Linked lists, Types of queue.
Applications of Queues: Job Scheduling, Josephus problem etc.
SECTION-1I
Trees:- Basic terminology, representation using array and linked lists. Tree Traversals:
Recursive and Non recursive, Operations on binary tree. Binary Search trees (BST).
Advanced Trees: Introduction, AVL tree, R-B tree, B tree and B+ tree.
Graphs: Terminology and representation using Adjacency Matrix and Adjacency Lists,
Graph Traversals and Application: BFS and DFS, Connected graph, Bipartite Graph,
Detecting Cycle in graph. Minimum Spanning tree: Prims and Kruskal’s Algorithm, Shortest
Path Algorithms, Union Find.
Hashing: Hashing techniques, Hash table, Hash functions. Collision handling and Collision resolution
techniques.
List of Tutorials: (Any Three)
1) Sorting Techniques: Insertion, Merge sort, Bubble, Shell Sort, Radix Sort.
4) Expression conversion like infix to prefix and postfix and vice versa.
8) B and B+ Tree.
6) Assignment based on various operations on Binary Tree (Mirror image, Height, Leaf
node display, Level wise display etc.)
5. Bloom Filters.
3. Analysis of Merge Sort, Quick Sort and Bubble Sort for Best, Average and Worst Case.
4. Solving N-queen and Josephus Problem using Backtracking , Stack and Queue respectively.
2. Graphs vs Tree Data Structures: Application based comparison? Which is best? Why?
How?
9. Graphs vs Tree Data Structures: Application based comparison? Which is best? Why?
How?
Design:
1. Design Single Source multiple destination Shortest Path Algorithm For Driving
Application.
Case Study:
1. Consider a Suitable Example for Hashing Application. Study its Merits, Demerits and
Design.
2. Consider different real life examples where different sorting, Searching techniques have
been used. Why used? How? Comparative study.
3. Why there is a need of different tree traversal algorithms? Consider different real life
examples where they are used. Why? How?
5. Compare different graph traversal algorithm by considering different real life examples
where they have used.
Blog
Surveys
1. How application of Graph Search Algorithms ( DFS and BFS) is there in recent
technologies? Consider some real life technologies.
2. How Advanced Trees Data structure plays important role in Database management?
MSE, ESE, GD, Seminar, HA, CVV, Lab Assignment, Course Project.
Text Books:
3. Narasimha karumanchi, “Data Structures and Algorithm Made Easy”, Fifth Edition, CareerMonk
publication.
Reference Books:
Course Outcomes:
1)To interpret and diagnose the properties of data structures with their memory representations
and time complexity analysis.(1)
2)To use linear data structures like stacks, queues with their applications.(2)
3)To implement operations like searching, insertion, deletion, traversing mechanism etc. on
various data structures with the help of dynamic storage representation.(3)
4)To demonstrate the use of binary tree traversals and to perform various operations on Non-
linear data structures.(5)
5) To analyze the Graph data structure and to solve the applications of Graph data
structures.(4)
6)To design the appropriate data structure by applying various hashing Techniques.(3)
CO PO Map
2 3 3 2 1 3
CO attainment levels
Following courses can be learned after successful completion of this course: Advanced Data
Structures, Design and Analysis of Algorithms, Operating Systems, Compiler Design,
Systems Programming, Data Science and similar courses.
Job Mapping: Data Structures and Algorithm is must necessary part of any programming
job. Without Data structures it is not possible to be good in Competitive coding. All Industries always looks
for a strong knowledge in Data structures. Without learning this course one can’t imagine a job in
computer/IT related industries and research.