COL106: Data Structures and Algorithms
I semester: 2021-22
Venkata V Koppula and Amitabha Bagchi
Important: Lab FAQs. Includes clarifications on lab sheets and projects, grading breakup, lab attendance, test modalities, Java installation and other tech issues.
Class Details
Lecture
Timings: Tue Thu Fri, 11AM-11:55AM.
Venue: Impartus.
Labs
Timings: 2-4 PM.
For your lab days please see the course calendar below.
Please click here to find out your TA's name.
Course calendar
Supplementary Material
- Lecture notes: Available on Teams: Go to the tabs in the "General Channel." Click on "Class Notebook", then "_Content Library" and then "Lecture notes."
- Lecture videos: Available on Impartus.
Apart from these, here are links to other material we will refer to.
- A. Bagchi, Finding the inorder succesor and inorder predecessor in a Binary Search Tree, YouTube video. Posted 29th September 2021.
- A. Bagchi, Practice problems on asymptotic analysis, 2018.
- A. Bagchi, Growable stacks: an example of amortized analysis, YouTube video, 2016.
- A. Bagchi, Abstract Data Types, IIT Delhi, 2018.
- M. T. Goodrich, R. Tamassia, Data Structures and Algorithms in Java, Wiley, 2014. You do not need to buy the book. We will roughly follow an older edition.
Lab Materials
Below are the links to the "teach yourself Java" module and the supporting code. You are required to solve all the exercises in the module.
Lab instructions
Evaluation
Labs (Best 4 of 6): 28% (Each lab will have 4% for lab test, 3% for a lab submission. Best score to be determined by lab days not by the two components of lab score).
Programming project: 12%
Minor: 20%
Major: 40%
Audit requirement. In case you choose to audit this class you must score 30 percent in both the lab and the exam component, i.e., 12/40 in Labs+programming projects and 18/60 in Minor+Major.
Policies
- Lecture attendance. Lecture attendance is strongly recommended but not mandatory.
- Lab attendance. For graded labs (P1 to P6) you are not allowed to submit or to take the lab test unless you attend the lab. Attendance in a lab is defined as follows: You must be present for the entire duration, i.e., 2PM to the beginning of the test and be available to interact as and when the TA requests it. Obviously, if you briefly have network issues, that's okay.
- There will be no make up labs for any reason. Since we are taking best 4 out of 6, you will not lose marks even if you miss 2 out of 6 labs.
- Do not send medical certificates and ask for leave because there is no concept of leave in this class: you either attend or don't attend.
- There will also be no make up labs for the ungraded sessions JM1 or JM2. If you miss these and need inputs from your TA you may send them a chat message on Teams.
- Late lab tests: If your lab test is submitted more than 5mins late it will be deleted. If it is submitted up to 5 minutes late it will be accepted without penalty. Note that this does NOT mean that you have 5 minutes extra time. You have to finish before the scheduled time. Those extra 5mins are only for network issues.
- Make up lab test: Some of you may miss 3 or more lab tests due to genuine reasons. For those people there will be a single make-up lab test held near the end of the semester (date to be announced). Only those people who have missed or not been able to submit 3 or more lab tests will be eligible for this make up test.
- Submissions by email:If you are not a PwD and email a lab test or a lab submission to your TA or to one of the instructors, it will be deleted. No email submission is allowed. If you can email, you can upload. If you are late, you are late and your test will not be accepted.
Last updated: Thu Aug 5 10:29:49 IST 2021.