Exam 1 Topics

Review materials covered from the slides, assigned reading, homework, plicker questions, and in-class questions. You should be able to sufficiently justify why any algorithm or data structure operation has the time complexity it does.

Exam 2 Topics

Topics are implicitly cumulative, not explicitly. That is, I will not directly ask you questions from exam 1 topics. However, many exam 2 topics depend on content we previously covered. For example, you’ll need to understand asymptotic notation as we continue to use that to represent the run time of an algorithm. Review materials covered from the slides, assigned reading, homework, plicker questions, and in-class questions. You should be able to sufficiently justify why any algorithm or data structure operation has the time complexity it does.

Instructions

Read the first six questions first. Try to work as many of those problems as possible. If you get stuck, briefly write down your ideas and then move on to the next problem – you can come back later if there’s time. Save the last bonus question for last; the bonus problem is entirely optional. Be concise and give well-organized explanations. Long, rambling, or poorly written/organized explanations, which are difficult to follow, will receive less credit.

Expect questions of the following form: