CMSC389O: The Coding Interview
Prerequisites: C- or better in CMSC250 and CMSC216
This course provides a comprehensive, practical introduction to technical interviews. The course will start with basic topics such as Big O and String Manipulation. We will then move into more complex topics such as Bit Manipulation and Dynamic Programming.
Most of the classes will be "In-Class Interviews".
Recommended: Cracking the Coding Interview by Gayle Laakmann McDowell
- Big O
- String Manipulation
- Sorting and Searching
- Linked Lists
- Stacks and Queues
- Trees and Graphs
- Bit Manipulation
- Dynamic Programming
Grades will be maintained on the CS Department grades server.
You are responsible for all material discussed in lecture and posted on the class repository, including announcements, deadlines, policies, etc.
Your final course grade will be determined according to the following percentages:
|30%||Class Participation||Each class will require active participation from the students.|
|20%||Homework||Weekly individual homework that require video submission of solution.|
|20%||Midterm||Two problems will be handed out (just like the homeworks). These problems will be more difficult than normal HW problems, but are the same format.|
|30%||Final||One problem will be handed out (just like the homeworks). This problems will be more difficult than normal HW problems, but is the same format. You must also complete an "essay" in which you detail how to complete a coding interveiw to someone who's never been in a coding interview before.|
Any request for reconsideration of any grading on coursework must be submitted within one week of when it is returned. No requests will be considered afterwards.
ICI = In-Class Interviews
|1 (9/1)||Big O + Sample Interview||HW1 OUT|
|2 (9/8)||ICI (String Manipulation)||HW1 DUE, HW2 OUT|
|3 (9/15)||ICI (Sorting + Searching)||HW2 DUE, HW3 OUT|
|4 (9/22)||ICI (Linked Lists)||HW3 DUE, HW4 OUT|
|5 (9/29)||ICI (Stacks + Queues)||HW4 DUE, HW5 OUT|
|6 (10/6)||ICI (Trees)||HW5 DUE, MIDTERM OUT|
|7 (10/13)||Graphs (DFS + BFS) + Sample Interview|
|8 (10/20)||ICI (Graphs)||MIDTERM DUE, HW6 OUT|
|9 (10/27)||Dynamic Programming + Sample Interview||HW6 DUE|
|10 (11/3)||ICI (Dynamic Programming)||HW7 OUT|
|11 (11/10)||Bit Manipulation + Sample Interview||HW7 DUE, HW8 OUT|
|12 (11/17)||ICI (Misc.)||HW8 DUE, FINAL OUT|
|13 (12/1)||ICI (Misc.)|
|14 (12/8)||NO CLASS||FINAL DUE|
Homework must be submitted in video format electronically via ELMS and must be no more than 30 minutes long. Homework may not be submitted by any other means (e.g., please do not email your homework to us). It is your responsibility to verify that your video plays back properly before submitting. All homework is due at 11:59 PM on the day indicated on the homework assignment.
Homework may be submitted up to 24 hours late for a 10% penalty. You may submit multiple times, but we will only view the latest submission.
|1||Big O||Chapter VI|
|2||String Manipulation||Chapter 1|
|3||Sorting + Searching||Chapter 10|
|4||Linked List||Chapter 2|
|5||Stacks + Queues||Chapter 3|
|6||Trees + Graphs||Chapter 4|
|7||Dynamic Programming||Chapter 8|
|8||Bit Manipulation||Chapter 5|
Outside-of-class communication with course staff
We will interact with students outside of class in primarily two ways: in-person during office hours and piazza. Email should only be used for emergencies and not class related questions (e.g., homework).
Dr. Dave Levin - email@example.com
Cameron Payton - firstname.lastname@example.org
Ishaan Parikh - email@example.com
Excused Absence and Academic Accommodations
See the section titled "Attendance, Absences, or Missed Assignments" available at Course Related Policies.
Disability Support Accommodations
See the section titled "Accessibility" available at Course Related Policies.
Note that academic dishonesty includes not only cheating, fabrication, and plagiarism, but also includes helping other students commit acts of academic dishonesty by allowing them to obtain copies of your work. In short, all submitted work must be your own. Cases of academic dishonesty will be pursued to the fullest extent possible as stipulated by the Office of Student Conduct.
It is very important for you to be aware of the consequences of cheating, fabrication, facilitation, and plagiarism. For more information on the Code of Academic Integrity or the Student Honor Council, please visit http://www.shc.umd.edu.
If you have a suggestion for improving this class, don't hesitate to tell the instructor or TAs during the semester. At the end of the semester, please don't forget to provide your feedback using the campus-wide CourseEvalUM system. Your comments will help make this class better.