CIT 594 Exam Questions
Spring 2012, David Matuszek

The following is a long list of possible exam questions; my exams will be composed of these questions, or questions that are modifications of these. Questions are not divided into pre-midterm and post-midterm, because I don't cover topics in the same order every time (and I may not cover every topic). It's up to you to figure out what I've covered and what I haven't. This list will be updated during the semester; in particular, there is not yet a section on concurrency.

Do not post answers to these questions on the web.

Please do not ask me for answers to these questions.

Abstract Data Types Generics Platforms Spanning Trees
Algorithm Types Graphs Preferences Sparse Arrays
Alpha-Beta Search Hashing Priority Queues Stacks, Queues, Deques
Analysis of Algorithms Heuristic Search Pruning State Machines
Arrays Huffman Encoding Quicksort State Spaces
Backtracking Hypergraphs Recognizers and Parsers Storage
Binary Trees Images Recursion Style
BNF Iterator Regular Expressions Threads
Collection Linked Lists Set Trees
Comparisons List SortedMap Tree Searching
Concurrency Map SortedSet  
Effective Programming Miscellaneous Sorting  

Style

Stacks, queues, deques

Collection

Iterator

Set

SortedSet

List

Map

SortedMap

BNF

Generics

Recursion

Threads

Concurrency

Abstract Data Types

State machines

Arrays

Binary trees

Trees

Analysis of Algorithms

Comparisons

Linked Lists

Hashing

Recognizers and Parsers

Sorting

Tree Searching

Priority Queues

Algorithm Types

Backtracking

Huffman Encoding

Graphs

Quicksort

State spaces and heuristic search

Pruning

Effective programming

Storage

Spanning Trees

Sparse Arrays

[This lecture was primarily intended as an example of using linked lists, so there's not much I want to ask.]

Preferences

Hypergraphs

Alpha-Beta Searching

Regular Expressions

Platforms

Images

Miscellaneous