Data Structures and Algorithms Design (Regular) DSE PDF
Data Structures and Algorithms Design (Regular) DSE PDF
Course Description
The course covers design, implementation and applications of basic and advanced data structures including
trees, graphs, bloom filters. The course also covers algorithm design techniques like greedy, dynamic, map
reduce etc. using examples from sorting, searching, graph theory, networking and number theory. The
complexity issues are also discussed further.
Course Objectives
No Objective
CO2 Introduce linear and non-linear data structures and best practices to choose appropriate data
structure for a given application
CO3 Teach various dictionary data structures (Lists, Trees, Heaps, Bloom filters) with illustrations on
possible representation, various operations and their efficiency
CO5 Discuss in detail various algorithm design approaches ( Greedy method, divide and conquer,
dynamic programming and map reduce) with appropriate examples, methods to make correct
design choice and the efficiency concerns
CO6 Introduce complexity classes , notion of NP-Completeness, ways of classifying problem into
appropriate complexity class
Text Book(s)
No Author(s), Title, Edition, Publishing House
T1 Algorithms Design: Foundations, Analysis and Internet Examples Michael T. Goodrich,
Roberto Tamassia, 2006, Wiley (Students Edition)
Content Structure
Learning Outcomes:
No Learning Outcomes
LO1 Describe various fundamental and advanced data structures, their properties, algorithm design
techniques and various means of evaluating algorithms
L02 Demonstrate the ability to evaluate algorithms, to select from a range of possible options, to
provide justification for that selection, and to implement the algorithm in a particular context.
LO3 Solve problems using Algorithms for Linear and Non-Linear Data Structures
LO4 Explain with a practical example, each of the algorithm design strategies (greedy, divide-and-
conquer, dynamic programming and map-reduce)
LO5 Use brute-force, greedy, divide-and-conquer, recursive backtracking, dynamic programming and
map reduce techniques to solve a given algorithm design problem.
LO6 Relate the real-world problems to known data structures and algorithms leading to the recommend
appropriate solutions in representation and implementation.
LO8 Classify problems into complexity classes P and NP and to prove hardness of problems
Academic Term
Course No
Lead Instructor
Course Contents
3 Amortized Analysis – Stack, Queue operations T1: 1.5, 2.2, 4.2, 2.3
5 Heap implementation of priority queue, Heap sort T1: 2.4, 6.1, 6.2, 6.3
9 Binary Search Tree - Motivation with the task of Searching and T1: 3.1
Binary Search Algorithm, Properties of BST, Searching an
element in BST
10 Greedy Method - Design Principles and Strategy, Fractional T1: 5.1, 7.1, 7.3
Knapsack Problem, Task Scheduling Problem
11 Divide and Conquer - Design Principles and Strategy, Analyzing T1: 5.2, 4.1, 4.3
Divide and Conquer Algorithms, Integer Multiplication Problem
12 Dynamic Programming - Design Principles and Strategy, Matrix T1: 5.3, 7.2
Chain Product Problem, 0/1 Knapsack Problem, All-pairs
Shortest Path Problem
https://dl.acm.org/cita
tion.cfm?id=1327492
http://www.macs.hw.a
c.uk/cs/techreps/docs/
files/HW-MACS-TR-
0096.pdf
14 Definition of P and NP classes and examples, Understanding T1: 13.1, 13.2, 13.3
NP-Completeness: CNF-SAT Cook-Levin theorem
15 Polynomial time reducibility: Clique and Set-Cover, Subset-Sum T1: 13.3, 13.4
and Knapsack
16 Review Session
# The above contact hours and topics can be adapted for non-specific and specific WILP
programs depending on the requirements and class interests.
Lab Details
Title Access URL
Lab Setup Instructions To be Determined
Select Topics and Case Studies from business for experiential learning
Topic Select Topics in Syllabus for experiential learning Access URL
No.
1 Modules 3, 4, 5 and 6 of this handout has case studies focussing on TBD
(1) evaluation and selection of data structures
(2) design, analysis and implementation of algorithms.
Evaluation Scheme
Legend: EC = Evaluation Component
No Name Type Duration Weig Day, Date, Session,
ht Time
Important Information
Syllabus for Mid-Semester Test (Closed Book): Topics in Weeks 1-7
Syllabus for Comprehensive Exam (Open Book): All topics given in plan of study
Evaluation Guidelines:
1. EC-1 consists of either two Assignments or three Quizzes. Announcements regarding the
same will be made in a timely manner.
2. For Closed Book tests: No books or reference material of any kind will be permitted.
Laptops/Mobiles of any kind are not allowed. Exchange of any material is not allowed.
3. For Open Book exams: Use of prescribed and reference text books, in original (not
photocopies) is permitted. Class notes/slides as reference material in filed or bound form is
permitted. However, loose sheets of paper will not be allowed. Use of calculators is
permitted in all exams. Laptops/Mobiles of any kind are not allowed. Exchange of any
material is not allowed.
4. If a student is unable to appear for the Regular Test/Exam due to genuine exigencies, the
student should follow the procedure to apply for the Make-Up Test/Exam. The
genuineness of the reason for absence in the Regular Exam shall be assessed prior to
giving permission to appear for the Make-up Exam. Make-Up Test/Exam will be
conducted only at selected exam centres on the dates to be announced later.
It shall be the responsibility of the individual student to be regular in maintaining the self-study
schedule as given in the course handout, attend the lectures, and take all the prescribed evaluation
components such as Assignment/Quiz, Mid-Semester Test and Comprehensive Exam according to
the evaluation scheme provided in the handout.