CSE 101 (Sections 01 and 02)
Introduction to Data Structures and Algorithms
Spring 2023


Syllabus
Canvas
Ed Discussion
Programming Assignmentspa8 extended one 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:
CSE 101-01: TTh 9:50-11:25am Earth & Marine B206
CSE 101-02: TTh 3:20- 4:55pm Thimann Lecture 003

Class Webpage: https://people.ucsc.edu/~ptantalo/cse101/Spring23/

Instructor:   PatrickTantalo    https://users.soe.ucsc.edu/~ptantalo/
Office Hours: Wednesday 10:00 - 12:00pm & 2:00 - 4:00pm  Zoom Link(Uses CruzID Gold Authentication)
Dates: Wednesday April 5 - Wednesday June 7
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
Anirudh Potlapally apotlapa@ucsc.edu Office Hours (Zoom)
Kajal Nitin Patil kapatil@ucsc.edu Office Hours (Zoom)
Arka Pal arpal@ucsc.edu Office Hours
Anuj Kamat ankamat@ucsc.edu Office Hours

Course Tutors:
Sebastian Carbonero     sicarbon@ucsc.edu      Office Hours (Zoom)
Stanley Chen stbchen@ucsc.edu Office Hours (Zoom)
Norton Choy nochoy@ucsc.edu Office Hours (Zoom)
Baswati Das Gupta bdasgupt@ucsc.edu Office Hours (Zoom)
Christian Fong cfong7@ucsc.edu
Sahil Gupta sgupta70@ucsc.edu Office Hours
Sidarth Khabia skhabiya@ucsc.edu Office Hours
Sheel Kulkarni shgkulka@ucsc.edu Office Hours
Raj Kunamaneni rkunaman@ucsc.edu Office Hours (Zoom)
Simon Kwong skwong5@ucsc.edu Office Hours (Zoom)
Dingjiang Liang dliang18@ucsc.edu Office Hours
Moore Macauley mmacaule@ucsc.edu Office Hours
Michael Mcallister mamcalli@ucsc.edu Office Hours
Madeline Miller maomille@ucsc.edu Office Hours
Sara Mitra susmitra@ucsc.edu Office Hours
Brian Nguyen bnguy118@ucsc.edu Office Hours (Zoom)
Nhan Nguyen nhtrnguy@ucsc.edu Office Hours
Ishika Pol ipol@ucsc.edu Office Hours
Sarah Rammaha srammaha@ucsc.edu Office Hours
Amaan Sheikh amasheik@ucsc.edu Office Hours
George Sono ysono@ucsc.edu Office Hours
Mahyar Vahabi mvahabi@ucsc.edu Office Hours

LSS Tutors:
Joshua Angel        joangel@ucsc.edu        Tutor Hours
Brandon Luu bgluu@ucsc.edu       Tutor Hours


Lab Schedule: Lab sessions will be held in BE 105 or BE 109.

Monday     9:00am - 11:00am     BE 105      Saeed, Nhan
Monday 11:00am - 1:00pm BE 105 Saeed, Moore, Brian
Monday 1:00pm - 3:00pm BE 105 Kajal, Dingjiang, Mahyar, George
Monday 3:00pm - 5:00pm BE 109 Arka, Michael, George, Madeline
Monday 5:00 - 7:00pm BE 109 Anuj, Ishika, Madeline
Tuesday 11:45am - 1:45pm BE 105 Amaan, Stanley, Sarah
Tuesday 5:15pm – 7:15pm BE 105 Sidarth, Sheel, Christian
Wednesday 9:00am –11:00am BE 109 Sara, Sarah
Wednesday 11:00am – 1:00pm BE 109 Anuj, Norton, Simon, Dingjiang
Wednesday 1:00pm – 3:00pm BE 109 Norton, Simon, Amaan
Wednesday 3:00pm – 5:00pm BE 105 Arka, Sara, Michael
Wednesday 5:00pm – 7:00pm BE 105 Ishika, Mahyar, Sahil, Christian
Thursday 11:45am – 1:45pm BE 109 Sidarth, Sheel, Nhan
Friday 3:30pm – 5:30pm BE 109 Sahil, Moore


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
Practical C Programming
C in a Nutshell
Pointers in C
C Reference
TutorialsPoint: C Standard Library
GeeksForGeeks: C Programming Language

Programming in C++
Practical C++ Programming
C++ Pocket Reference
Safe C++
C++ Reference
TutorialsPoint: C++ Library Reference
GeeksForGeeks: C++ Programming Language

Makefiles
Simple Makefile Tutorial
GNU make

Unix
Learning the Unix Operating System
TutorialsPoint Unix/Linux Tutorial
More Unix Tutorials

Unix Editors
vi: TutorialsPoint vi Tutorial The vi Text Editor Basic vi Commands
emacs: A Guided Tour of emacs Beginner's Guide to emacs Basic emacs Commands
nano: Beginner's Guide to Nano

Campus Resources:
Information Technology Services
ITS Computer Lab Schedules



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