Data Structures & Algorithms syllabus
PCC-201-ITT · Second Year Information Technology, 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 & Algorithms
7 hoursIntroduction to Data Structures: Data, Data Object, Data types, Abstract Data Types (ADT), Data structures, Classification of Data Structure: primitive and non-primitive, Static and Dynamic, Persistent and Ephemeral data structures Introduction to Algorithms: Definition and Characteristics of an algorithm, Algorithm Specification, Introduction to algorithm design strategies Performance Analysis- Time and space complexity, Asymptotic notations, Best, Average and worst cases. Finding complexity using step count method, Analysis of programming Constructs-Linear, Quadratic, Cubic, Logarithmic Basic Searching Algorithms: Linear Search, Binary Search Basic Sorting Algorithm: Bubble Sort, Selection Sort, Insertion Sort
Linear Data Structures
7 hoursLinked Lists: Singly LL, Doubly LL, Circular LL. Linked list as an ADT. Stack: Stack as an ADT, Arrays and Linked Lists implementation, Implicit vs explicit stack, Applications of stack: recursion, converting expressions from infix to postfix or prefix form, evaluating postfix or prefix form Queue: Queue as an ADT, Arrays and Linked Lists implementation, Types: Circular Queue, Double- ended Queue (Deque), Applications
Non- Linear data Structures
9 hoursTree-Definitions and Concepts, Representation of binary tree, Binary tree traversal (Inorder, postorder, preorder), Threaded binary tree, Binary search trees, Conversion of General Trees To Binary Trees, Applications Of Trees Some balanced tree mechanism, eg. AVL trees, 2-3 trees, Height Balanced, Weight Balance, Graph-Matrix Representation Of Graphs, Elementary Graph operations,(Breadth First Search, Depth First Search, Spanning Trees, Shortest path, Minimal spanning tree- Prims and Kruskals Algorithm ) Heap: Heap data structure, Min and Max Heap, Heap sort, applications of heap
Hashing, String processing Applications
8 hoursHashing: Hash Functions, Collision Handling Techniques (Chaining, Open Addressing) String Processing: Naïve String Matching, Rabin-Karp Algorithm, Knuth-Morris-Pratt (KMP) Algorithm Applications of DSA: , Social Network Graph Analysis, and AI Search Algorithms
Advanced Algorithms
7 hoursDivide and Conquer: Merge Sort, Quick Sort, Matrix Multiplication; Greedy Algorithms: Activity Selection, Fractional Knapsack, Huffman Coding; Dynamic Programming: 0/1 Knapsack, Longest Common Subsequence (LCS), Floyd-Warshall.
Marks and credits
| Head | Marks | Credit |
|---|---|---|
| CCE (continuous comprehensive evaluation) | 30 | 3 |
| End-semester exam | 70 |
Prerequisite: Fundamental knowledge of programming language and basics of algorithms.
Course outcomes
- CO1To Perform basic analysis of algorithms with respect to time and space complexity.
- CO2To apply appropriate data structures to implement stack and queue.
- CO3To design and specify the operations of a nonlinear-based abstract data type and implement them in a high-level programming language.
- CO4Design different hashing functions
- CO5To Solve real-life optimization problems using Divide and Conquer, Greedy, and Dynamic Programming strategies.
Books
Text books
- Michael T. Goodrich, Roberto Tamassia, and David M. Mount , “Data Structures and Algorithms in C++"
- R. Gilberg, B. Forouzan, “Data Structure: A Pseudo code approach with C++”, Cengage Learning.
Reference books
- Thomas H. Cormen, Charles E. Leiserson and Ronald L. Rivest, “Introduction to Algorithms”, 2nd Edition, The MIT Press, 2001, ISBN 0-262-03293-7.
- Sartaj Sahni, “Data Structures, Algorithms and Applications in C++”, 2nd Edition, Universities Press.
- Mark Allen Weiss, “Data Structures and Algorithm Analysis in C++” (2007), Second Edition, Pearson Education.
- Goodrich, “Data Structures and Algorithms in C++”, Wiley. e-Books:
NPTEL and SWAYAM links
Listed in the official syllabus:
FAQ
How many units are in Data Structures & Algorithms?
Data Structures & Algorithms (PCC-201-ITT) has 5 units: Unit I Introduction to Data Structures & Algorithms (7 h); Unit II Linear Data Structures (7 h); Unit III Non- Linear data Structures (9 h); Unit IV Hashing, String processing Applications (8 h); Unit V Advanced Algorithms (7 h).
What is the marks scheme for Data Structures & Algorithms?
The official Information Technology 2024 pattern syllabus lists continuous comprehensive evaluation (CCE) for 30 marks and the end-semester exam for 70 marks, for 3 credits.
What should I know before Data Structures & Algorithms?
Prerequisite listed in the syllabus: Fundamental knowledge of programming language and basics of algorithms.