Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

CS F211 DSA Handout 2024

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

SECOND SEMESTER 2023-2024

Course Handout Part II


Date: 09-01-2024
In addition to Part-I (General Handout for all courses appended to the time table) this portion gives further
specific details regarding the course.

Course No. : CS F211


Course Title : Data Structures & Algorithms
Instructor-in-Charge : Venkatakrishnan Ramaswamy (venkat@hyderabad.bits-pilani.ac.in)
Instructors : NLBhanu Murthy,
Barsha Mitra,
Paresh Saxena,
S Shashank
Attarde Pranjali Devidas

Scope and Objective of the Course:


Data Structures & Algorithms is a foundational course in Computer Science. It pertains to the design of
efficient logical structures to store, access &manipulate data and the to design of efficient algorithms to solve
computational problems. The course starts with defining precise notions of measuring efficiency of algorithms.
The course covers design, implementation and analysis of data structures such as linked lists, stacks, queues,
heaps, binary search trees and graphs. It discusses sorting and search techniques, with detailed performance
analysis. Additionally, the course covers algorithm design techniques such as Divide-and Conquer, Greedy
Algorithms and Dynamic Programming, with applications to computational problems.

The objectives of the course are for the student to be able to


 Understand asymptotic time complexity and analyze algorithms using this formalism.
 Understand basic data structures with performance analysis and cultivate the ability to write correct and
efficient implementations.
 Understand basic searching and sorting techniques.
 Understand basic algorithmic design techniques and acquire the ability to apply these techniques to
design correct and efficient algorithms to pertinent problems.
 Understand rudimentary notions of time complexity lower bounds, especially in relation to search and
sorting problems.

Textbook:
T1. T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein. Introduction to Algorithms, MIT
Press(Indian reprint: Prentice Hall of India), 3rd Edition, 2009.
Reference books
R1. M.T. Goodrich and R. Tamassia,Algorithm Design: Foundations, Analysis and Internet
examples,John Wiley & Sons, 2006.
R2. J. Kleinberg and E. Tardos,Algorithm Design. Pearson Education, 2013.
R3. S. Dasgupta, C. Papadimitriou, U. Vazirani, Algorithms, McGraw-Hill (Indian edition), 2017.

Course Plan:
Chapter in
Lecture
Learning objectives Topics to be covered the Text
No.
Book
Introducing the
1-2 importance of data Course introduction. 1
structures & algorithms
Introduce asymptotic
notation formalism for
3-4 Growth of functions 3
analyzing performance
of algorithms
Sorting algorithms: Insertion sort, Bubble
Understand standard sort, Quick sort, Merge sort, Radix sort and
5-12 sorting techniques with Bucket sort. 2, 7, 8
performance analysis Lower bounds on complexity of comparison-
based sorting algorithms.
Understand standard
selection techniques Selection algorithms. Linear-time selection
13-15 9
with performance algorithm via median of medians
analysis
Understand elementary Elementary Data Structures: Stacks, Queues,
16-25 10, 6
data structures Linked lists, Priority queues, Heaps, Heapsort

26-27 Understand hash tables Hash tables 11


Understand binary
search techniques and Binary search trees, balancing binary search
28-30 12, 13
techniques to balance trees, Red-Black Trees, Skip lists
them
To understand standard
algorithm design
Algorithm design techniques: Divide and
techniques and acquire
31-37 conquer, Greedy algorithms, Dynamic 4, 15, 16
the ability to correctly
Programming
apply them to
problems.
To understand basics of
38 Amortized analysis 17
amortized analysis
To understand basic
graph algorithms and Graph algorithms: Traversals& their analysis,
39-42 22, 24, 25
their performance Shortest Path Algorithms
analysis
Evaluation Scheme:
Nature of
Component Duration Weightage Date & Time
Component
12/03 - 11.00 -
Midsemester Test 90 minutes 30% Closed book
12.30PM
Weekly lab Open book
Laboratory
assignments (textbook only
Continuous 24% TBA
will be without
evaluation
evaluated. annotations)

Final Lab Test 2 Hours 11% TBA Closed book.


Comprehensive
180 minutes 35% 09/05 FN Closed book
Examination
*40% of the Evaluation will be completed by Mid Semester Grading.

Chamber Consultation Hour: To be announced in class.

Notices:Will be posted online on the CMS course management system. Students are expected to subscribe for email
notifications from CMS that they would need to check several times a day. Students are responsible for keeping up with
announcements, some of which may be made in detail only in class.

Make-up Policy:
No make-ups will be offered for the Laboratory continuous evaluation; we will take the best n-k lab scores, for n and k
that will be announced.
For the Mid-semester test and Comprehensive exam, no make-ups will be offered, except in case of medical or family
emergencies of a severe nature or other unavoidable extenuating circumstances, as judged by the Instructor-in-Charge, for
which prior permission must be sought, where feasible. Documented evidence (e.g. a Doctor’s letter) will be necessary
before consideration of such a request and must reach the I/C prior to the commencement of the exam.

Academic Honesty and Integrity Policy:


Academic honesty and integrity are to be maintained by all the students throughout the semester and no type of
academic dishonesty is acceptable.

INSTRUCTOR-IN-CHARGE
CS F211

You might also like