CSE 21 - Math/Algorithm&Systems Analys - Jones [WI24]

(subject to change 1/4/24)

Content Calendar

Extra Resources

Lecture Notes


CSE 21 Winter 2024

Mathematics for Algorithms and Systems

About the Course

Welcome to CSE21! 

This course will cover mathematical concepts used to model and analyze algorithms and computer systems. Topics include counting techniques (inclusion-exclusion; recursive counting; permutations and combinations), data representations, analysis of algorithms (order notation; time complexities; loop invariants), recurrence relations, graphs, trees (data structure representations; basic graph algorithms; special classes of graphs), and basic probability and its applications.


The main prerequisite is CSE 20 or MATH 15A. It is sufficient to know basic set theory concepts and terminology (cardinality, union, intersection, cartesian product), basic propositional and predicate logic, basic proof techniques (direct proof, contrapositive, contradiction and induction), basic mathematics (arithmetic, algebra [calculus, trigonometry and geometry are not required but may be helpful to know]), a basic understanding of computer programming (if-then statements, for and while loops, variable assignment, arrays...).

Learning Outcomes

  • Learn and use strategies to count sets of objects including strings over a finite alphabet, permutations, k-element subsets, fixed-density binary strings, etc.
  • Learn how to solve recurrence relations and use them to help with applications such as counting.
  • Understand how to encode information efficiently into binary strings.
  • Analyze loop-based and recursive algorithms.
  • Understand how to use Asymptotic notation when describing runtimes of algorithms.
  • Learn basic graph terminology and model different problems using graphs and graph algorithms
  • Learn basic discrete probability terminology and theory.


Instructor and Course Staff

(Piazza (private post) is the preferred way for you to communicate with the instructional staff.)



To make an appointment for a 1-on-1 with a TA/tutor, follow the instructions in this spreadsheet:


Office hours and One-on-One sessions

The instructor, TAs and tutors will hold office hours (locations TBD). During office hours, you can ask questions about lecture or homework. There may be other students there from different groups. It is okay to share some strategies and hints but it is discouraged to share your answers directly with other students. Office hours are a great way to get ideas and hints on how to start and finish the homework. This class is challenging and it is recommended to attend office hours in order to succeed.

One on one sessions are 30 minute sessions that you can sign up for to meet one-on-one with a TA or tutor. (Or, if you like, you can schedule a session for your whole group.) One-on-one sessions are not intended for discussing the current homework assignment, they are for discussing previous homeworks and lectures. They are designed to help students who may feel behind in the class and want to revisit some concepts from previous lectures.


Course Resources

Piazza Signup Link: (link on canvas sidebar)

Gradescope Link:  (link on canvas sidebar)
Gradescope Entry Code: XX7PW2

The main resource for this class will be the lecture slides. The textbook is a great resource to accompany the course but the course will not be following the textbook chronologically so be warned.

The textbook for this course is:

Kenneth Rosen   Discrete Mathematics and its Applications, Kenneth Rosen, McGraw Hill, 7th edition.

The textbook's companion website has extra practice problems and resources. In particular, the Self Assessments and the Extra Examples for each chapter are great practice materials.  Earlier editions contain almost all of the material we will reference, and can be bought used often quite reasonably.  Just be sure to double-check locations for references  because we will use the  chapter and page numbers for 7th edition.  

You may also wish to look at the following textbook as a supplementary resource.

Jenkyns, Stephenson   Fundamentals of Discrete Math for Computer Science: A Problem-Solving Primer
The full pdf of this book is available for free download from a UCSD internet connection at:


Another helpful book is:  Daniel Solow's
How to Read and Do Proofs: An Introduction to Mathematical Thought Processes
While primarily for mathematics majors, it also is a general reference that can be used by anyone reading or doing proofs.


Time and Location



Time Room
Lecture Tu/Th  9:30am-10:50am



Discussion Section                  






Final Exam

Tuesday March 19

Scheduled for 8:00am-10:59am

Details to come



Lectures and review quizzes:

  •  The lecture slides will be posted before class on the content calendar link.
  •  You may interrupt lecture to ask questions, make comments or express doubts (Please raise your hand and [In case of emergency, I may have to teach remotely. In which case:] for those via zoom, you can use the chat feature. There will be TAs monitoring the zoom chat.)
  •  All lectures will be recorded and posted for students to watch when they want on podcast.ucsd.edu.
  •  If I have to teach remotely then you are not required to have a webcam.
  •  There will be a short review quiz each week,  open until the Monday of the next week. You will have unlimited attempts. The Review quiz should be posted by the end of the day on Thursday or Friday morning.



Coursework and Grades


Your grade will be based on the following:

  • Homework
  • 1 Midterm
  • 2 Tests
  • Review Quizzes
  • Final Exam


Homeworks can be downloaded from the homework page.

Homework should be done in groups of 1-4 people. So you may do them on your own if you prefer not to work in a group. You are free to change group member at any time throughout the quarter. Problems should be solved together, not divided up between partners.

We will drop the lowest homework score.

Homework solutions should be typed (NOT HANDWRITTEN) and turned in through Gradescope by 11:59pm on the due date. You will be able to look at your scanned work before submitting it. Please ensure that your submission is legible or your homework may not be graded. You may resubmit updated versions of your homework up until the deadline. Only your most recent Gradescope submission will be graded.

Latex resources can be found in extra resources

Late Homework:

You may hand in your homework up to 24 hours late with a penalty of 1 point.

Standards for evaluation

Your assignments in this class will be evaluated not only on the correctness of your answers, but on your ability to present your ideas clearly and logically. You should always explain how you arrived at your conclusions, using mathematically sound reasoning. Whether you use formal proof techniques or write a more informal argument for why something is true, your answers should always be well-supported. Your goal should be to convince the reader that your results and methods are sound. This means that unless it says: "no justification necessary" then we expect a written justification.

Collaboration Guidelines for Homework

Students are encouraged to collaborate on homework assignments. You may work in groups of up to four students. Your group will submit one assignment and Gradescope will give you the opportunity to add all of your group members to the assignment. Groups do not have to be the same people for every assignment. You can change group members at any time.

If you are discussing problems with students outside of your group, please only share hints and basic techniques. DO NOT share your answers or allow other students to copy your written work. The bottom line is to submit YOUR OWN work. If we find that your work is too similar to another group's then you may be suspected of an academic integrity violation.  All students whose names are on the assignment must have participated in answering all questions, at the minimum by carefully proof-reading the submitted answers.  If there is a member of your group that did not participate, you cannot list them as a group member for this assignment.  If some other student or teaching staff gave you a tip that was particularly useful, please give them an acknowledgement in the assignment. That will help us avoid unnecessary accusations of academic integrity violations.

You may not collaborate with anyone outside of the class. You are not permitted to ask homework questions to message boards or websites such as Chegg.

You may use some materials not from class, such as other textbooks, notes from previous sections of the class, Khan Academy videos or something similar, but with some caution. If an outside source has something relevant to a particular homework or exam problem, you must give the source a reference when you submit your assignment.  We will review how similar the reference is to your answer.  If it is too similar, you may lose some points for the assignment, but as long as you give the reference, it will not be an Academic Integrity issue.  (It is considered an academic integrity violation to enter homework questions into ChatGPT or other GenAI software and present the results as your own.)

Review Quizzes

There will be a review quiz for every week.

This adds up to 10 total review quizzes.

You will have until the following Monday to complete the review quizzes of the preceding week.

You will have unlimited attempts on each quiz.

Each review quiz is worth 1 point. You will get whatever fraction of 1 based on how well you did on the review quiz.

In order to get the full 5% points for review quizzes, you must earn 8 points.

Each point less than 8, the percentage will go down by 1 percent:

8+:   5%

7:     4%

6:     3%

5:     2%

4:     1%

3-:    0%


The tests will be administered on Canvas. The questions are randomly selected from a question bank. You will have 80 minutes to complete the test during the day of the test. After the test results have been posted, you will have the option of doing a "re-test" where you can earn up to 1/3 the points you missed from the original test. You may openly ask for help for the "re-test" and you will have unlimited attempts throughout the weekend.


There will be one midterm. 

It will be 15% of your grade.

The midterm will be administered during the scheduled classtime (80 minutes). The midterm will be administered in-person.  There may be two rooms (including the main lecture hall).  You are free to bring one sheet (front and back) of notes (handwritten, or typed.) And you are free to bring a calculator (not on your phone!)

Final Examination:

The final examination will be held in-person at the date and time stated in the course calendar. It is your responsibility to ensure that you do not have a schedule conflict involving the final examination. You are free to bring two sheets (front and back) of notes (handwritten, or typed.) And you are free to bring a calculator (not on your phone!)


Course grades will be computed using the following:

Grading option 1:
Review quizzes: 5%
HW:                    30% (best 6 of 7)
Test 1:                 8%
Test 2:                 8%
Midterm:            15%
Final:                   34%

Grading option 2:
Review quizzes: 5%
HW:                    30% (best 6 of 7)
Test 1:                 10%
Test 2:                 10%
Midterm:             0%
Final:                   45%

Grading option 3:
Review quizzes:          5%
HW:                             30% (best 6 of 7)
Best of Test 1 and 2:  10%
Midterm:                     15%
Final:                            40%


Grade Scale: Your final grade will be based on the following scale. (You will earn the grade in the table based on your numerical score or higher.) 

 A+        A          A-        B+        B          B-        C+       C            C-     D         F

 98        93       90        86        82        78        74        70        64     60    below 60

Course Policies

Academic Integrity

In this course we expect students to adhere to the UC San Diego Integrity of Scholarship Policy.   This means that you will complete your work honestly, with integrity, and support an environment of integrity within the class for which you are tutoring.  Some examples of specific ways this policy applies to CSE 21  include:

  • Do not discuss solutions to homework problems with people besides your homework partner (except during office hours, with the instructional team).
  • Do not share written solutions with other groups.
  • Do not collaborate or copy exams.
  • You should not attempt to search for homework solutions or exam solutions online or in sources outside of the course content. (Example: you should not consult content from CSE 21 of past quarters.) If you accidentally stumble upon a homework solution in such an outside source you should cite it in your homework solution. If your solution proves to be too similar to the cited one, you may lose credit on the problem, however failure to cite the other solution will be treated as academic dishonesty.
  • Follow the golden rule for Academic Integrity:  Always give credit for any outside help on any assignment, except for those whose job it is to help you (Instructors, TAs, tutors, the textbook, your teammates, and class handouts.)
  • Note on ChatGPT and other GenAI software: Inputting homework or exam questions into ChatGPT or any other GenAI software and turning in the answer that is given is considered an Academic integrity violation. As with any other resource, I expect your words and work to be your own.
  • Please let me know if you have any questions about these guidelines and if you are unsure if something is considered a violation, you can always ask.


Collaboration Policy

For homework collaboration policy, see the paragraph above.

For the exams, you are not permitted to collaborate with anyone else (including people from outside of the class like message boards or Chegg). We will give you the opportunity to ask questions to the teaching staff during exams.

Regrade Policy

Please be prompt (three days) in reporting to your TA any errors in the grading of your work, or in the recording of your grade. All grades become permanent three days after they are recorded. Regrade requests for homework assignments must be made on Gradescope. Please note that by requesting a regrade for a problem, it will be completely regraded and your grade may go up or down.  When you make a regrade request, you should specify exactly what the mistake in grading is, i.e., the wrong rubric item was selected or the rubric itself is inaccurate.  Vague requests for more partial credit will not be granted.

Late or Missed Assignments/Missed Exam Policy

Late Homework:
You may hand in your homework up to 24 hours late with a penalty of 1 point.

Exams and tests:
Other than extenuating circumstances, there is no credit for late or missed exams or tests.

Technology Policy

For homework assignments and for exams, you are permitted to use calculators. (See the section on Academic integrity for more details.)

Outside Tutoring

Individuals are not permitted to approach students to offer services of any kind in exchange for pay,  including tutoring services.  This is considered solicitation for business and is strictly prohibited by University policy.


Resources for Students

Getting Help

We provide many office hours and 1-1 sessions. Please use them. This class can be challenging if you don't engage with the teaching staff.


The IDEA Engineering Student Center, located just off the lobby of Jacobs Hall, is a hub for student engagement, academic enrichment, personal/professional development, leadership, community involvement, and a respectful learning environment for all.  The Center offers a variety of programs, listed on the IDEA Center Facebook page at http://www.facebook.com/ucsdidea/ (you are welcome to Like this page!) and the Center website at http://idea.ucsd.edu/ .  The IDEA Center programs support both undergraduate students and graduate students.

Diversity and Inclusion

We are committed to fostering a learning environment for this course that supports a diversity of thoughts, perspectives, and experiences, and respects your identities (including race, ethnicity, heritage, gender, sex, class, sexuality, religion, ability, age, educational background, etc.).  Our goal is to create a diverse and inclusive learning environment where all students feel comfortable and can thrive. 


Our instructional staff will make a concerted effort to be welcoming and inclusive to the wide diversity of students in this course.  If there is a way we can make you feel more included please let one of the course staff know, either in person, via email/discussion board, or even in a note under the door.  Our learning about diverse perspectives and identities is an ongoing process, and we welcome your perspectives and input. 


We also expect that you, as a student in this course, will honor and respect your classmates, abiding by the UCSD Principles of Community ( https://ucsd.edu/about/principles.html ).  Please understand that others’ backgrounds, perspectives, and experiences may be different than your own, and help us to build an environment where everyone is respected and feels comfortable.

If you experience any sort of harassment or discrimination, please contact an instructor as soon as possible.   If you prefer to speak with someone outside of the course, please contact the Office of Prevention of Harassment and Discrimination: https://ophd.ucsd.edu/ .  

Students with Disabilities

We aim to create an environment in which all students can succeed in this course.  If you have a disability, please contact the Office for Students with Disability (OSD), which is located in University Center 202 behind Center Hall, to discuss appropriate accommodations right away.  We will work to provide you with the accommodations you need, but you must first provide a current Authorization for Accommodation (AFA) letter issued by the OSD.  You are required to present their AFA letters to Faculty (please make arrangements to contact me privately) and to the OSD Liaison in the department in advance so that accommodations may be arranged.

Basic Needs/Food Insecurities

If you are experiencing any basic needs insecurities (food, housing, financial resources), there are resources available on campus to help, including The Hub and the Triton Food Pantry.  Please visit http://thehub.ucsd.edu/ for more information.

Course Summary:

Date Details Due