Basic Data Structures

My Take on UCSD's Basic Data Structures course (CSE 12)


Project maintained by nate-browne Hosted on GitHub Pages — Theme by mattgraham

AssignmentsScheduleLectures NotesStaffStyle Guide

fibonacci heap

Overview

Welcome! This course aims to provide a broad overview into the basic data structures that are a crucial part to the development of computer science fundamentals. We will explore implementation details in C++, as well as discuss features and techniques of ADTs and data structures informally.

Grading Breakdown

Programming Assignments (40%): There will be 7 programming assignments of varying length and difficulty. Turnin instructions will be posted with the assignments. Do note that you have a total of 4 late days that can be used as needed throughout the quarter, with one late day defined as turning in the assignment anywhere from 1 second to 23 hours, 59 minutes, and 59 seconds past the deadline.

Exams (55%): There are two midterms (one week 5 and the other week 8) and a final exam. For both midterms, a one-sided study sheet is allowed, with the final allowing for a two-sided sheet. Maximum sheet size is 8.5” x 11”. This percentage will be calculated in one of three ways, whichever is highest:

  1. midterm 1 (15%) + midterm 2 (15%) + final (25%)
  2. drop one midterm + midterm (25%) + final (30%)
  3. drop one midterm + midterm (15%) + final (40%)

Participation (5%): This class uses Socrative, a free alternative to clickers. You can download the app onto a phone or tablet, or use it from your browser.

Extra credit may be awarded to students who are top contributors on Piazza and in lecture, as determined at the discretion of the course staff.

Resources