Professional Documents
Culture Documents
Semester I
Course Objectives: To impart the knowledge of advanced data structures and new techniques for
algorithm design, solving specific problems more efficiently and analyzing space and time
requirements.
Detailed Syllabus:
Sr. Contents Hour
s
1 Basics of data structures like linked list, graph, tree, 6
Analyze the asymptotic performance of algorithms. Amortized Analysis:
Introduction, Different methods Algorithmic design paradigms like Greedy,
dynamic, Divide and Conquer
2 Advanced Data Structures 7
Applications, Properties, Operations, Analysis of various data structures: Skip Lists,
Tries, Dynamic Trees, Splay Trees, Hashing Function and Universal hashing,
3 Graphs Representation, Traversal, Depth First and Breadth First Search, Shortest 7
path,
Network Flows: Maximum-Flow / Minimum-Cut, Ford Fulkerson algorithm,
Augmenting Path.
4 Trees: Red-Black Tree, B-Tree, Splay Tree, Tree Traversals, Appliations of Trees in 7
Computer Science,
One Dimensional Range Searching, Two Dimensional Range Searching, Constructing
a Priority Search Tree, Searching a Priority Search Tree, Priority Range Trees,
Quadtrees, k-D Trees.
5 Data Structure for Strings: Tries and Compressed Tries, Suffix Trees, Suffix Arrays, 6
Page 1 of 3
String algorithms.
6 Approximation Algorithms: Introduction, Applications: Vertex Cover Problem, TSP 7
Randomized Algorithms: Monte Carlo Problem, Application: Quick Sort ,Pattern
matching
NP completeness Polynomial time problem, Non-deterministically Polynomial (NP)
Problems, NP-Completeness (Hard Problem) and reducibility
Note: This specification table shall be treated as a general guideline for students and teachers. The
actual distribution of marks in the question paper may vary slightly from above table.
Reference Books:
1 "Introduction to Algorithms" by Cormen, Leiserson, Rivest, Stein
2 “Fundamentals of Algorithmics” by Gilles Brassard and Paul Bratley
3 "Analysis of Algorithms_ An Active Learning Approach" by Jeffrey J. McConnell
4 "Randomized algorithms" by motwani and raghavan
5 "The Design and Analysis of Computer Algorithms" by Aho, Hopcroft, Ullman
6 Ellis Horowitz, Sahani, Rajsekharam, "Fundamentals of Computer Algorithms", University
Press
7 Mark Allen Weiss, Data Structures and Algorithm Analysis in C++, 2nd Edition, Pearson, 2004
8 M T Goodrich, Roberto Tamassia, Algorithm Design, John Wiley, 2002
9 Click or tap here to enter text.
1 Click or tap here to enter text.
0
Page 2 of 3
List of Practicals / Tutorials:
1 Implement a Program for Doubly LinkedList with All Cases for Insertion and Deletion of the
Node in it.
2 Implement merge sort algorithm and quick sort algorithm.
3 Implement BFS algorithm.
4 Implement DFS algorithm.
5 Implement shortest path Floyd-Warshall algorithm.
6 Implement Bellman-Ford algorithm.
7 Implement a Program to Construct Red-Black Tree with Operations like Insertion and
Deletion.
8 Design a Simple Search Engine to Display the Possible Websites upon Entering a Search
Query. Use Suitable Data Structure for Storage and Retrieval.
9 Write a Program to Implement Trie Data Structure with Operations like Insertion and
Deletion.
10 Implement kD Tree.
Curriculum Revision:
Version: 1
Drafted on (Month-Year): Apr-20
Last Reviewed on (Month-Year): Jul-20
Next Review on (Month-Year): Apr-22
Page 3 of 3