Information information
Marks distribution: Assignments - 50%; Lab Tests - 50%; Course Projects - BONUS.
There will be no Mid-Sem or End-Sem examination for this course.
All classes will be held virtually on Zoom. Please note the change in venue from previous years.
Lectures lectures
Day | Date | Topic | Note | Ref |
---|---|---|---|---|
0 | 5 Oct 2021 | Technical Introduction |
Slides [PDF] Video [MP4] |
(B3), (B16) |
1 | 7 Oct 2021 | Programming in C – Warmup |
Slides [PDF] Video [MP4] |
|
2 | 21 Oct 2021 | Review of C – Operators, Expressions, Control Flow, Basic Input/output |
Slides [PDF] Video [MP4] |
(B1) |
3 | 26 Oct 2021 | Recap |
Video [MP4] |
|
4 | 28 Oct 2021 | Review of C – Arrays, Pointers, Dynamic Memory Allocation, Structures |
Slides [PDF] Video [MP4] |
(B1) |
5 | 2 Nov 2021 | Recap |
Video [MP4] |
|
6 | 9 Nov 2021 | Review of C – More Input/Output, Preprocessor Directives, File Handling, Header Files, Multi-file Programs |
Slides [PDF] Video [MP4] |
(B1) |
7 | 11 Nov 2021 | Problem Solving Skills |
Slides [PDF] Video [MP4] |
(B1), (B2) |
8 | 16 Nov 2021 | Functions and Recursion |
Slides [PDF] Video [MP4] |
|
9 | 18 Nov 2021 | Stacks, Queues and Linked Lists |
Slides [PDF] Video [MP4] |
(B5) |
10 | 23 Nov 2021 | Recap |
Video [MP4] |
|
11 | 25 Nov 2021 | Binary Trees |
Slides [PDF] Video [MP4] |
(B6) |
12 | 14 Dec 2021 | Heaps |
Slides [PDF] Video [MP4] |
(B14) |
13 | 21 Dec 2021 | Sorting Techniques |
Slides [PDF] Video [MP4] |
(B12) |
14 | 23 Dec 2021 | Searching Techniques |
Slides [PDF] Video [MP4] |
|
15 | 28 Dec 2021 | Binary Search Trees |
Slides [PDF] Video [MP4] common.h, bst.h, bst-alt.h |
(B1), (B14) |
16 | 30 Dec 2021 | Balanced Search Trees |
Slides [PDF] Video [MP4] avl-alt.h |
|
17 | 4 Jan 2022 | Hashing |
Slides [PDF] Video [MP4] |
|
18 | 6 Jan 2022 | Tries |
Slides [PDF] Video [MP4] |
|
19 | 11 Jan 2022 | Programming Style, Efficient Programming, Code Optimization |
Slides [PDF] Video [MP4] |
(B20), (B21) |
20 | 13 Jan 2022 | Debugging tools: GDB, Valgrind |
Slides [PDF] Video [MP4] |
(B18) |
21 | 18 Jan 2022 | Recap |
Video [MP4] |
|
22 | 20 Jan 2022 | Computing with Python |
Slides [PDF] Video [MP4] |
(B22), (B23) |
Course Plan lectures
No duesAssignments assignments
No. | Deadline | Test cases | Solutions |
---|---|---|---|
Assignment 1 | 07:00am, 15 Nov 2021 | ||
Assignment 2 | 07:00am, 15 Dec 2021 | ||
Assignment 3 | 07:00am, 15 Jan 2022 |
Lab Teststests
Test | Date | Questions | Solution |
---|---|---|---|
1 | 9 Dec 2021 | Question paper | |
2 | 20 Jan 2022 | Question paper | |
3 | 19 Feb 2022 | Question paper |
Course Projects assignments
No. | Deadline | Resources |
---|---|---|
Project 1 | 31 Jan 2022 |
Chandrasekaran et al., 2020 (Published version, arXiv version) |
Other Resources resources
Data Structure Visualizations from USFCA
Announcements
- Assignment 3 uploaded.
- Assignment 2 uploaded.
- Assignment 1 uploaded.
- Course project has been uploaded.
Instructors
Teaching Assistants
- Santlal Prajapati (SP)
- Chandranan Dhar (CD)
- Kushal Bose (KB)
Study Material
-
The C Programming Language
B. W. Kernighan and D. M. Ritchie
Prentice Hall, India -
How to Solve it by Computer
R. G. Dromey
Pearson Education -
The Unix Programming Environment
B. W. Kernighan and R. Pike
Prentice Hall, India -
Introduction to Algorithms
T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein
MIT Press -
Fundamentals of Data Structures
E. Horowitz and S. Sahni
Universities Press -
Data Structures and Algorithms
Alfred V. Aho, John E. Hopcroft and Jeffrey D. Ullman
Pearson -
Data Structure Techniques
T. A. Standish
Addison Wesley -
The C++ Programming Language
Bjarne Stroustrup
Addison Wesley -
C++ - The Complete Reference
Herbert Schildt
McGraw Hill Education (India) -
Object-Oriented Programming in C++
Robert Lafore
SAMS -
Programming Languages Design and Implementation
T. W. Pratt and M. V. Zelkowitz
Pearson -
Fundamentals of Data Structures in C
E. Horowitz, S. Sahni and S. Anderson-Freed
Silicon Press -
Data Structures and Algorithm Analysis in C++
Mark A. Weiss
Pearson -
Algorithms
Robert Sedgewick and Kevin Wayne
Addison-Wesley Professional -
The Practice of Programming
Brian Kernighan and Rob Pike
Addison-Wesley Professional -
Programming Pearls
Jon Bentley
Pearson -
The Linux Command Line
William Shotts
No Starch Press -
The GNU Make Manual
R. M. Stallman, R. McGrath and P. D. Smith
Free Software Foundation -
Randomized Algorithms
Rajeev Motwani and Prabhakar Raghavan
Cambridge University Press -
The Elements of Programming Style
B. W. Kernighan and P. J. Plauger
McGraw-Hill -
Expert C Programming: Deep C Secrets
Peter van der Linden
SunSoft Press -
Learning Python
Mark Lutz
O'Reilly -
Data Structures and Algorithms in Python
Michael T. Goodrich, Roberto Tamassia and Michael H. Goldwasser
Wiley