Data Structures syllabus
PCC-201-CSE · Second Year Computer Science and Engineering, SPPU 2024 pattern. Every unit, the marks scheme, course outcomes and books, copied from the official syllabus PDF.
Unit-wise syllabus
Introduction to Data Structures and Algorithms
9 hoursIntroduction: Introduction to Data Structures: Abstract Data Types (ADT), Linear and Non-linear, Static and Dynamic, Persistent and Ephemeral data structures Algorithms: Space complexity, Time complexity, Asymptotic notation- Big-O, Theta and Omega, finding complexity using step count method, Analysis of programming constructs-Linear, Quadratic, Cubic, Logarithmic. Algorithmic Strategies: Introduction to algorithm design strategies- Divide and Conquer, and Greedy strategy
Case Study:E-commerce Product Sorting using Divide and Conquer strategy Google Calendar application using Greedy strategy
Linear Data Structures, searching and sorting
9 hoursOverview of Array, Array as an Abstract Data Type, Operations on Array, Storage Representation, Multidimensional Arrays[2D, nD], Sparse matrix representation using 2D Searching: Sequential Search/Linear Search, Binary Search, Fibonacci Search, and Indexed Sequential Search. Sorting: Concepts- Stability, Efficiency, and Number of Passes, Internal and External Sorting, Bubble sort, Insertion Sort, Selection Sort , Quick Sort, Merge sort
Case Study : Social Network Adjacency Matrix Representing friendship connections among millions of users.
Stacks, Queues and Linked Lists
9 hoursStacks: Stack operations, Multiple Stacks, Applications of Stack for Expression Conversion [infix, prefix and postfix], Postfix expression evaluation Queues: Queue Operations, Circular Queue, Priority Queue and its advantages and applications Linked list: Introduction of Linked Lists, Primitive Operations on Linked List- Create, Traverse, Search, Insert, Delete, Sort, and Concatenate. Types of Linked List: Singly linked, linear and Circular Linked Lists, Doubly Linked List,
Case study: Implementation of Stack and Queue operations using Linked lists
Hashing
9 hoursHash Table : Concepts-hash table, hash function, basic operations, bucket, collision, probe, synonym, overflow, open hashing, closed hashing, perfect hash function, load density, full table, load factor, rehashing, properties of good hash function, Collision resolution strategies- open addressing and chaining, Hash table overflow- open addressing and chaining, extendible hashing, closed addressing and separate chaining
Case study : Dictionary Application using Hash Tables, Description: Implement a dictionary where words and meanings are stored and retrieved using hashing with collision resolution
Graphs and Trees
9 hoursGraphs: Basic Concepts, Storage representation, Adjacency matrix, adjacency list, Traversals-depth first and breadth first, Minimum spanning Tree, Greedy algorithms for computing minimum spanning tree- Prims and Kruskal Algorithms Trees: General tree and its representation: sequential and linked organization, Binary tree- prop- erties, converting tree to binary tree, binary tree traversals (recursive and non-recursive) - inorder, preorder, post order, Operations on binary tree. Binary Search Tree (BST) and its operation
Case study: GPS/Navigation system that models a city map as a weighted graph and applies core graph algorithms ZIP/GZIP file compression using frequency-based encoding. using Huffman tree
Marks and credits
| Head | Marks | Credit |
|---|---|---|
| CCE (continuous comprehensive evaluation) | 40 | 3 |
| End-semester exam | 60 |
Prerequisite: Programming and Problem Solving, Fundamentals of Programming Languages.
Course outcomes
- CO1Understand and Analyze various types of data structures and algorithms
- CO2Apply various sorting and searching algorithms for given problem
- CO3Make Use of Stacks and Queues to solve the given problem
- CO4Analyze different hashing techniques and collision resolution strategies.
- CO5Demonstrate basic operations on trees and graphs
Books
Text books
- Data structures and algorithms in python by Michael T. Goodrich, ISBN-13: 978-1118290279, ISBN-10: 1118290275, Publisher: Wiley; 1st edition (March 18, 2013).
- Problem Solving with Algorithms and Data Structures Using Python by Bradley N Miller and David L. Ranum. ISBN-13: 978-1590282571, ISBN-10: 1590282574, Publisher: Franklin, Beedle & Associates; 2nd edition (August 22, 2011).
Reference books
- Hands-On Data Structures and Algorithms with Python: Write complex and powerful code using the latest features of Python 3.7, 2nd Edition by Dr. Basant Agarwal, Benjamin Baka. ISBN: 9781788991933, 2018.
- Core Python Programming -R. Nageswara Rao, ISBN-10: 9789351199427, ISBN-13: 978-9351199427, Willy; 1st edition (January 1, 2016).
NPTEL and SWAYAM links
Listed in the official syllabus:
FAQ
How many units are in Data Structures?
Data Structures (PCC-201-CSE) has 5 units and 45 hours of theory: Unit I Introduction to Data Structures and Algorithms (9 h); Unit II Linear Data Structures, searching and sorting (9 h); Unit III Stacks, Queues and Linked Lists (9 h); Unit IV Hashing (9 h); Unit V Graphs and Trees (9 h).
What is the marks scheme for Data Structures?
The official Computer Science and Engineering 2024 pattern syllabus lists continuous comprehensive evaluation (CCE) for 40 marks and the end-semester exam for 60 marks, for 3 credits.
What should I know before Data Structures?
Prerequisite listed in the syllabus: Programming and Problem Solving, Fundamentals of Programming Languages.