19ECE361 DSA Course Plan Theory
19ECE361 DSA Course Plan Theory
Course Objectives
• To learn the linear and non-linear data structures and explore its applications.
• To understand representation using graph data structure
• To comprehend and employ basic sorting and searching algorithm
Course Outcomes: At the end of the course, the student should be able to
CO1: Ability to implement linear and non-linear data structure operations using C
CO2: Ability to solve problems using appropriate data structures.
CO3: Ability to analyse the algorithms and its complexity.
CO4: Ability to employ sorting and searching algorithms using relevant data structures
CO-PO Mapping
Page 1 of 4
Syllabus
Unit I
Algorithm Analysis: Methodologies for Analysing Algorithms, Asymptotic Notation, Recurrence Relations, Data Structures: Linear Data
Structures (Stacks – Queues - Linked-Lists - Vectors) -Trees (Binary Search Trees - AVL trees - Red-Black trees - B-trees) - Hash-Tables
(Dictionaries - Associative Arrays - Database Indexing, Caches - Sets) and Union-Find Structures.
Unit II
Searching and Sorting (Insertion and Selection Sort - Quick sort - Merge sort - Heap sort - Bucket Sort and Radix Sort) - Comparison of sorting
algorithms and lower bounds on sorting - Fundamental Techniques - The Greedy Method - Divide and Conquer - Dynamic Programming.
Unit III
Graph Algorithms: Elementary Algorithms - Breadth-first search, Depth-first search, Topological sort, strongly connected components - Minimum
Spanning Trees - Single-Source Shortest Paths - All-Pairs Shortest Paths -Maximum Flow - Network Flow and Matching - Flows and Cuts.
Textbook(s)
[1] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, “Introduction to Algorithms”, Third Edition, MIT Press, 2009.
[2] Robert Sedgewick and Kevin Wayne, “Algorithms”, Fourth Edition, Addison Wesley, 2011.
Reference(s)
[1] Kurt Mehlhorn and Peter Sanders, “Data Structures and Algorithms: The Basic Toolbox”, Springer, 2008.
[2] John V. Guttag, “Introduction to computation and Programming using Python”, MIT Press, second edition, 2016.
Course Plan
Page 2 of 4
Creation of Stacks and Queues, CO2 Chapter 10, Text [1]
10 to 12 Stacks and Queues Operations on Stacks and Queues,
ADT, Pseudocodes of operation.
Quiz-1
13 to 14 Basic tree traversals, Binary tree, CO2 Chapter 12 and 13,
Trees
211177111 Data structure for representing trees Text [1]
CO2 Chapter 12 and 13,
15 to 16 Binary Search Trees (BST) Creation, Insertion, Deletion of BST
Text [1]
Balance Factor, Creation, Insertion, CO2 Chapter 12 and 13,
17 to 19 AVL Tree
Deletion of AVL Tree Text [1]
CO2 Chapter 12 and 13,
20 to 22 Heap Tree Creation, Insertion, and Deletion
Text [1]
B-tree implementation, Hashing CO3 Chapter 11 Text [1]
23 to 24 B-Tree and Hashing functions, Probing concepts, Hash
tables
Mid Semester Examination
Priority queues, Heaps, CO2 Chapter 6, Text [1]
25 to 26 Heaps and Queues
Implementation using lists
Bubble Sort, Selection Sort, CO4 Chapter 6 and 7, Text
27 to 29
Sorting Insertion Sort, [1]
Heap Sort, Merge Sort, Quick Sort CO4 Chapter 6 and 7, Text
30 to 33 Sorting
[1]
Quiz-2
Data structure for graphs - Basic CO3 and Chapter 22 and 23,
34 to 36 Graph Algorithms CO4 Text [1]
traversal- Directed graphs -
Weighted graphs - Minimum CO3 and Chapter 22 and 23,
37 to 39 Graph Algorithms
spanning tree, Shortest Paths CO4 Text [1]
Single-Source Shortest Paths - All- CO3 and Chapter 24, 25, and 26,
Pairs Shortest Paths -Maximum CO4 Text [1]
40 to 42 Graph Algorithms
Flow - Network Flow and Matching
- Flows and Cuts
End Semester Examination
Page 3 of 4
Evaluation Pattern
Max. Marks Weightage Assessment Date
Assessment Components Component Name
Mid-Term Examination Mid-Term Examination 50 30 As per Exam TT
Quiz-1 15 7.5 12th February 2025
Quiz-2 15 7.5 18th April 2025
Internal Programming 17th - 21st March 2025
Continuous Assessment 10 7.5
Assignment (CO1)
Handwritten Periodical submission
10 7.5
Assignment
End Semester As per Exam TT
External End Semester Exam 100 40
Exam/Course project
Total Marks 100
Page 4 of 4