CSE 101
Introduction to Data Structures and Algorithms
Winter 2024


Syllabus
Canvas
Ed Discussion
Programming Assignmentspa8 extended 1 last day
Handouts
Examples
Notes
Yuja
GradeScope
GitLab

Midterm 1 Review ProblemsMidterm 1 Review SolutionsMidterm 1 Solutions

Midterm 2 Review ProblemsMidterm 2 Review SolutionsMidterm 2 Solutions

Final Exam Review ProblemsFinal Exam Review Solutions

Red-Black Tree Animation
Data Structure Visualizations


Lecture:  TTh 3:20pm - 4:55pm Kresge 3105
Class Webpage: https://people.ucsc.edu/~ptantalo/cse101/Winter24/

Instructor:   PatrickTantalo    https://users.soe.ucsc.edu/~ptantalo/
Office Hours: Wednesday 10:00am - 12:00pm & 2:00pm - 4:00pm  Zoom Link(Uses CruzID Gold Authentication)
Dates: Wednesday January 10 - Wednesday March 13
Email:ptantalo@soe.ucsc.edu


Teaching Assistants:
Vincent Tan          vtan6@ucsc.edu      Office Hours (Zoom)
Engin Tekin etekin@ucsc.edu Office Hours (Zoom)
Saeed Kargar skargar@ucsc.edu Office Hours
Sai Venkat Malreddy smalredd@ucsc.edu Office Hours
Akashleena Sarkar aksarkar@ucsc.edu Office Hours
Amin Karbas mkarbasf@ucsc.edu Office Hours (Zoom)
Jacqueline Yan qyan79@ucsc.edu Office Hours (Zoom)
Karthik K Bhat kabhat@ucsc.edu Office Hours

Course Tutors:
Madeline Miller         maomille@ucsc.edu     Office Hours
Eric Phuong erphuong@ucsc.edu Office Hours
Simon Kwong skwong5@ucsc.edu Office Hours
Brandon Chuang bychuang@ucsc.edu Office Hours
Arjun Krishnan akrish29@ucsc.edu Office Hours
Aaron Lee alee208@ucsc.edu Office Hours
Moore Macauley mmacaule@ucsc.edu Office Hours
Sarah Rammaha srammaha@ucsc.edu Office Hours (Zoom)
Nhan Nguyen nhtrnguy@ucsc.edu Office Hours
Norton Choy nochoy@ucsc.edu Office Hours (Zoom)
Shreya Sundar ssundar6@ucsc.edu Office Hours (Zoom)
Stanley Chen stbchen@ucsc.edu Office Hours (Zoom)
Audrey Ostrom aostrom@ucsc.edu Office Hours
Shreyas Gupta sgupt102@ucsc.edu Office Hours
Arveen Azhand aazhand@ucsc.edu Office Hours (Zoom)
Raj Nadkarni ranadkar@ucsc.edu Office Hours (Zoom)
Alex Lio alio@ucsc.edu Office Hours
Daksh Shah dakshah@ucsc.edu Office Hours
Anish Shivamurthy ashivamu@ucsc.edu Office Hours
Winston Yi wyi10@ucsc.edu Office Hours
Sameer Dash sadash@ucsc.edu Office Hours
Timothy Shao thshao@ucsc.edu Office Hours
Eric Anderson erchande@ucsc.edu Office Hours

LSS Large Group Tutors:
Tony Umemoto       atumemot@ucsc.edu        Signup Information
Xavier Thompson xthompso@ucsc.edu Signup Information


Lab Schedule: All lab sessions will be held in Kresge 3401 or Baskin 109.

Monday    10:30am –12:30pm    Kresge 3401    Saeed, Nhan, Shreya, Anish, Eric A.
Monday 12:30pm – 2:30pm Kresge 3401 Saeed, Nhan, Aaron, Eric A.
Monday 5:30pm - 7:30pm Kresge 3401 Engin, Audrey, Arveen, Sameer
Tuesday 9:30am –11:30am Kresge 3401 Akashleena, Venkat, Karthik, Madeline
Tuesday 12:45pm – 2:45pm Baskin 109 Amin, Simon, Audrey, Daksh, Winston
Wednesday 2:00pm – 4:00pm Kresge 3401 Karthik, Eric P., Simon, Aaron, Daksh
Wednesday 4:00pm – 6:00pm Kresge 3401 Arjun, Moore, Alex, Sameer
Thursday 11:00am – 1:00pm Kresge 3401 Venkat, Arjun, Shreyas, Raj
Thursday 1:00pm - 3:00pm Kresge 3401 Moore, Norton, Timothy
Thursday 5:30pm – 7:30pm Baskin 109 Amin, Jacqueline, Brandon, Timothy
Friday 10:00am –12:00pm Kresge 3401 Akashleena, Madeline, Shreyas, Winston
Friday 1:15pm – 3:15pm Baskin 109 Brandon, Stanley, Alex, Anish


Required Text:
Introduction to Algorithms  (3rd edition)  by Cormen, Leiserson, Rivest and Stein  -- MIT Press 2009  ISBN 978-0-262-03384-8

Supplemental Texts:
Open Data Structures  (pseudo-code edition) by Pat Morin
Data Abstraction & Problem Solving with C++  (6th edition)  by Carrano & Henry   -- Pearson 2013  ISBN 978-0-13-292372-9
The C Programming Language  (2nd edition)  by Kernighan and Ritchie   -- Prentice Hall 1988  ISBN -0-13-110362-8
The C++ programming language  (4th edition)  by Bjarne Stroustrup   -- Pearson 2013  ISBN 978-0-321-56384-2

Programming Resources:

Programming in C
C Reference
TutorialsPoint: C Standard Library
GeeksForGeeks: C Programming Language

Programming in C++
C++ Reference
TutorialsPoint: C++ Library Reference
GeeksForGeeks: C++ Programming Language

Git
The Git Book
Git User Manual
Git Documentation

Makefiles
Simple Makefile Tutorial
GNU make

Unix
TutorialsPoint Unix/Linux Tutorial
More Unix Tutorials

Unix Editors
vi: The vi Text Editor Basic vi Commands
emacs: Beginner's Guide to emacs Basic emacs Commands
nano: Nano Command Manual

Campus Resources:
Getting Started with Zoom
Information Technology Services
ITS Computer Lab Schedules



If you find any errors, please report them to:   ptantalo@soe.ucsc.edu