Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
4 views

CSF211 Data Structures and Algorithms II Sem 2024-25 Handout 2

The document is a course handout for CS F211 (Data Structures and Algorithms) at BITS Pilani, Dubai Campus for the Second Semester 2024-2025. It outlines the course objectives, prerequisites, textbooks, course schedule, learning outcomes, evaluation scheme, attendance policies, and consultation hours for instructors. The course aims to introduce students to data structures, algorithms, and their applications, with a focus on performance analysis and practical implementation.

Uploaded by

fjb4rgndnx
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

CSF211 Data Structures and Algorithms II Sem 2024-25 Handout 2

The document is a course handout for CS F211 (Data Structures and Algorithms) at BITS Pilani, Dubai Campus for the Second Semester 2024-2025. It outlines the course objectives, prerequisites, textbooks, course schedule, learning outcomes, evaluation scheme, attendance policies, and consultation hours for instructors. The course aims to introduce students to data structures, algorithms, and their applications, with a focus on performance analysis and practical implementation.

Uploaded by

fjb4rgndnx
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

BITS PILANI, DUBAI CAMPUS

ACADEMIC – UNDERGRADUATE STUDIES DIVISION


Second Semester 2024 – 2025
Course Handout (Part – II)
Date: 3.02.2025

In addition to Part I (General Handout for all courses appended to the Time Table) this portion further
specific details regarding the course.

Course No. : CS F211 (3 1 4)


Course Title : Data Structures and Algorithms
Instructor-in-charge: Dr. Tojo Mathew
Instructors : Dr. Ashish Gupta, Dr. Neena Susan, Dr. Tojo Mathew, Dr. Sujala D Shetty

Scope and Objective of the Course:


This course offers an introduction to typical data structures used for representing collections of data
and the associated relations. The course is design oriented but realization and performance issues will
also be covered. It covers most common deterministic data structures for linear and non-linear data as
well as a few randomized data structures. The primary goals of the course are: 1) to introduce common
data structures for storing collections of data and the associated relations along with algorithms for
retrieving/modifying the data. 2) to introduce techniques for designing and implementing such data
structures on modern computers and 3) to introduce formal and experimental techniques for analyzing
the performance (time and space) of such data structures.

Course Pre/Requisite (if any) & Catalogue / Bulletin Description:


Please refer Bulletin 2024-2025.

Text book(s) [T]:


T1. Michael T. Goodrich and Roberto Tamassia, “Algorithm Design: Foundations, Analysis and Internet
examples” (John Wiley &Sons, Inc., 2006).

Reference book(s) [R]:


R1. Cormen T.H., Leiserson, C. E., Rivest, R.L., and C. Stein, “Introduction to Algorithms”, MIT Press, 3rd
Edition, 2009. (Indian reprint: Prentice Hall)
R2. Ellis Horowitz, Sartaj Sahni, and Sanguthevar Rajasekaran, “Computer Algorithms C++”, Silicon Press,
Baker &Taylor, Barnes & Noble, 2nd edition, 2010.
R3. Seymour Lipschutz, “Data Structures with C”, Schaum’s Outlines, Tata McGraw Hill, 2011.

Course Plan / Schedule:

S. L Learning objectives Topics to be covered Referenc


No. e es
c (Chapter
. s)
N
o
To understand the roles of modeling Course Motivation and
1 1- data, abstraction and representation Introduction. Data : Class Notes
2 in solving problems Modeling, Abstraction
and Representation
Define and implement access Abstract Data Types
3– restricted lists (stacks and and Data Structures: T1 2.1, 2,2
2 8 queues) applications. Implement Lists (LIFO, FIFO, Class Notes
ordered lists using arrays and Ordered) and
linked lists. implementation
Analyze and differentiate sequential Searching in ordered
access vs. random access, Lists – Sequential and
3 9-10 implement binary search , Random Access Lists. Class Notes
understand virtual memory, Locality and Data
memory hierarchy, locality of Representation
reference and its role in design of
data structures
Understand time and space Time and
11 - complexity measures, analyze Space T1 1.1 to 1.4
4 15 simple algorithms and data Requirements.
structures, understand how I/O I/O
affects performance Performance
Understand the principle of Divide-and-Conquer T1 4.1, T1
divide-and-conquer, apply it on Algorithms – Insertion 5.2
5 16 - simple problems, formulate Sort and Merge Sort and R1 4.3
19 time complexity as a to 4.5
recurrence Class notes
relation, understand and
compare basic sorting
algorithms
Understand how recursive Recursion and
6 20 - procedures work, transform Iteration. Class Notes
24 recursive procedures to iterative, Transforming
and eliminate tail recursion. Recursive
Procedures to Iterative
Understand how Quick sort Quick Sort – Algorithm,
7 25 - works, the significance of Analysis, Pivot Selection T1 4.3 and
28 pivot selection and how and R1 Ch
randomization improves Randomization, 7
“expected performance” Performance
Improvements
Understand how bucket sort and Bucket Sort and Radix T1 4.5
8 29 – Radix sort Sort
30 work
Understand the significance of hash Hashing and Hash
functions and hash tables in Tables – Unordered
providing efficient lookup Dictionary, Hash T1 2.5 and
9 31 – Functions and Collision, R1
33 Separation Chaining, 11.2 to 11.4
Open Addressed Hash
Tables and Probing
Techniques,
Analyses
Understand the need for probabilistic Bloom filters –
10 34 data structure and Bloom filters Motivation, Design Class
and Analysis Notes
Understand how to model Partially Ordered Data –
11 35 – partially ordered data Modeling using Trees, T1 2.3
39 Binary Trees, Tree
Traversals
Implement binary search trees and Ordered Dictionaries:
12 40 – height balancing technique Binary Search Trees – T1 3.1 to
43 Operations and analysis, 3.2
Height
Balanced BSTs.
Understand how to model data using Generalized Trees and
13 44- Trees, implement trees with fixed tree Traversals Class
45 and arbitrary branching and tree Notes
traversal techniques
Understand Tries and its Variants Ordered Dictionaries:
14 46 Tries, analysis, Variants T1 9.2

Implement and use heaps Partially ordered Data –


15 47- Heaps, T1 2.4
Analysis,
48 Applications
Understand issues in concurrent Concurrent Operations
16 49 access to data structures on Data Structures – Class
Issues and Notes
Solutions
Understand B-Trees External Memory Data
17 50 Structures – B- R1 Ch 18
Trees, Analysis
and Variants
Model binary relations Modeling Binary
18 51 using graphs, understand Relations using T1 6.1 to
graph operations Graphs. Graph 6.2
Representations
Understand and implement Graphs – Traversals,
19 52- algorithms for graph traversal, Connectivity and T1 6.3 to
testing connectivity and finding Connected Components
54 connected components 6.4
Understand how to model data using Weighted Graphs –
20 55- weighted graphs, shortest path Modeling, Shortest T1 7.1 to
56 algorithms and MST algorithms Paths and Minimal 7.3
Spanning Trees

Lab Practical: The following topics are covered in the lab.

Sessions
S. No. Topics (2 classes Venue
per week)
1 Revisit (file handing and pointers) 1
2 Stack 1
3 Queue 1
4 Linked List 1
5 Searching algorithms 1
Lab Room
6 Sorting algorithms 2 No. 333
7 Hashing 1
8 Graph operations 2
9 Tree basic operations 2
10 Practice Session 1

Course Learning Outcomes (CLOs):


Upon successful completion of this course, students should be able to:
• CLO1 Understand the need of data structures with its real-world applications
• CLO2 Learn various useful operations for efficient access of data
• CLO3 Identify the efficient ways to apply suitable data structures for a given problem
• CLO4 Understand efficiency of algorithms using time complexity
• CLO5 Familiarize with algorithm design concepts

Mapping of CLOs, PLOs, and CECs

Evaluation Components (ECs)


CLOs PLOs
EC1 EC2 EC3 EC4 EC5
CLO1 1,2,4
CLO2 1, 2, 3, 4
CLO3 1, 2,3, 4
CLO4 1, 2,3, 4
CLO5 1, 3, 4, 5,8

Evaluation scheme:

S. Evaluatio Nature Durati Weightag Date Venu


No. n of on e & e
Compone Compone % Time
nts nt
1 Quiz – 1 Closed book 20 10% 14 March To be
minutes 2025 announced
(Friday) later
3rd Hour
2 Mid-Term Exam Open book* 90 30% 08 April
(Open) minutes 2025
(Tuesday)
AN
3 Lab Open Book* 2hrs 10% Weekly
Regularity + per lab hours
Experiment wee as per Lab
Demo k Time Room
Table 333
4 Lab Compre Closed book 2hrs 15% To be
announc
ed
later
5 Compre Exam Closed book 3 hours 35% 02 June To be
(Theory) 2025 announced
(Monday) later
AN
*Open Book: Text/Reference Books, Class Notes permitted.

Mid-sem Grading:
Mid-sem grading will be displayed after two evaluation components or earlier when- ever about 35% of
evaluation components are completed.
Note: A student will be likely to get “NC”, if he / she
• Doesn’t appear / appear for the sake of appearing for the evaluation components / scoring zero
in pre-compre total.

Makeup and Attendance policies:

Make-ups: Make-up for any evaluation component will be considered only if ALL the following conditions
are satisfied:
1. Students need to communicate the inability to attend the evaluation component and the reason for it
on or before the scheduled date & time of the evaluation component.
2. Valid proof for the quoted reason produced along with a make-up request form within 3 days of the
date of evaluation component.
3. Approval by the department committee for evaluating the seriousness of the situation that led to
missing the evaluation component.

Attendance: Every student is expected to be responsible for regularity of his/her attendance in class
rooms and laboratories, to appear in scheduled tests and examinations and fulfill all other tasks assigned
to him/her in every course. A student should have a minimum of 60% of attendance in a course to be
eligible to appear for the Comprehensive Examination in that course. For the students under the purview
of Academic Counseling Board (ACB), the Board shall prescribe the minimum attendance requirement on a
case-to-case basis. Attendance in the course will be a deciding factor in judging the seriousness of a
student which may be directly / indirectly related to grading.

General timings for consultation:


Following are the chamber consultation hours(CCH) during which the student can approach the
course instructor for consultation.
1. Dr. Ashish Gupta, Assistant Professor, Room No.235, Ext. no: 318
E-mail: ashish@dubai.bits-pilani.ac.in
CCH: Friday 3rd Hour
2. Dr. Neena Susan, Assistant Professor(adjunct), Room No.235, Ext. no: 318
Email: csadjunct.neena@dubai.bits-pilani.ac.in
CCH: Thursday 5th hour
3. Dr. Tojo Mathew, Assistant Professor, Room No.234, Ext. no: 317
E-mail: tojomathew@dubai.bits-pilani.ac.in
CCH: Monday 6t hour
4. Dr. Sujala D Shetty, Associate Professor, Room No. 279, Ext. no: 328
E-mail: sujala@dubai.bits-pilani.ac.in
CCH: Wednesday 3rd Hour

General instructions:
Students should come prepared for classes and carry the text book(s) or material(s) as prescribed by the
Course Instructor to the class.
Notices:
All notices concerning the course will be displayed on LMS Meta classroom for the course.

Dr. Tojo Mathew


Instructor-in-Charge

You might also like