Skip to content

Midterm 1 Practice Problems Release Notes

PMT1 = "Practice Midterm 1 problems"

These practice problems are all past exams, except for the PMT1-Debugging Example. While we encourage you to go through as many of them as you have time for, the most important part of this process is how you study. Relying too heavily on the solutions, AI, or Piazza threads to solve problems may rob you of the experience and skills built by solving them on your own (as you will have to do on the exams).

If you have questions or want to collaborate on these, check the pinned "PMT1" Piazza post.


Exams will now include debugging exercises

Starting this semester, we will now be including debugging exercises as part of the exams, accounting for ~20% of the total points. These exercises will be similar to other exercises, except they will already have code written that has one or more errors. You will have to fix the code and submit it, using the same debugging skills you would use when writing your own code.

The past exams do not have debugging exercises, so we have prepared a standalone set of exercises you can use to practice. Like the other exams, this can be found in your LMS, in the Practice Midterm 1 (PMT1) section. The exam is titled PMT1-Debugging Example.


Practice Exam Solutions

Solutions, walkthrough videos, additional TA solutions

PMT1-Debugging Example

This is a debugging example practice exam, not a full past exam. These exercises are similar to what you can expect to see on the upcoming exam, alongside regular exercises.

Official Solution - TBD

  • Point breakdown: 4 exercises; 2 x 2 pointers, 2 x 3 pointers
  • Topic: Email analytics
  • Key skills: Debugging

PMT1-FA25

Official Solution

TA Walkthrough Video

-- The TA Walkthrough solution presentation for this exam was split between 2 TAs, so the solution pages below represent the exercises that each TA presented. Students will need both for a complete solution.

TA Walkthrough Solution #1

TA Walkthrough Solution #2

  • Point breakdown: 11 exercises; 19 points available; 15 points required for 100%; Time limit 4 hours
  • Topic: Golf Performance Analytics.
  • Key skills: string manipulation, regular expressions, JSON processing, data validation, statistical analysis

PMT1-SP25

Official Solution

TA Walkthrough Video

-- The TA Walkthrough solution presentation for this exam was split between 2 TAs, so the solution pages below represent the exercises that each TA presented. Students will need both for a complete solution.

TA Walkthrough Solution #1

TA Walkthrough Solution #2

  • Point breakdown: 9 exercises; 18 points available; 13 points required for 100%; Time limit 4 hours
  • Topic: Creating a Recommender System.
  • Key skills: lists and sets, nested data structures, math as code, basic algorithm concepts

PMT1-FA24

Official Solution

TA Walkthrough Video

-- The TA Walkthrough solution presentation for this exam was split between 2 TAs, so the solution pages below represent the exercises that each TA presented. Students will need both for a complete solution.

TA Walkthrough Solution #1

TA Walkthrough Solution #2

  • Point breakdown: 10 exercise; 18 points available; 13 points required for 100%; Time limit 4 hours
  • Topic: Professor Vuduc Writes a Pop Song
  • Key skills: string processing, nested data, sorting

PMT1-SP24

Official Solution

TA Walkthrough Video

TA Walkthrough Solution

  • Point breakdown: 8 exercise; 15 points available; 11 points required for 100%; Time limit 4 hours
  • Topic: Ranking poker hands
  • Key skills: Nested data structure, bitwise operations

PMT1-FA23

Official Solution

TA Walkthrough Video

There is not a solution document for this TA video.

  • Point breakdown: 8 exercises; 13 available points; 11 points required for 100%; Time limit 4 hours
  • Topic: Email Centrality - In this notebook you will combine data sources to prepare for analysis by a fraud detection tool.
  • Key Skills: Basic Python data structures, strings, translating simple math into code.

PMT1-SP23

Official Solution

TA Walkthrough Video

TA Walkthrough Solution

  • Point breakdown: 10 exercises; 18 available points; 13 points required for 100%; Time limit 4 hours
  • Topic: Mining for friends - In this notebook you will analyze data from Twitter and Foursquare to find groups of people with common interests.
  • Key skills: Basic Python data Structures, nested Python data structures, and string manipulation.