Quiz Topics
Exact topics are subject to change.
- Quiz 1: Algorithms, expressions and types
- Define an algorithm
- Evaluate expressions including arithmetic operators
- Determine the value and type of an expression, including potential type errors
- Quiz 2: Functions and for loops
- Write a simple function, with or without a return statement
- Define an appropriate docstring for a function
- Define appropriate sequences for a (nested) for loop
- Quiz 3: Strings and lists as sequences (operators, methods, slicing)
- Apply sequence operators and methods to both strings and lists
- Evaluate slice expressions
- Determine which operations can be applied to multiple sequence types vs. a specific type only
- Quiz 4: Booleans, conditionals and while loops
- Evaluate boolean expressions containing comparisons and boolean operators
- Evaluate conditional statements
- Determine whether a while loop will terminate or be infinite loop
- Quiz 5: Sets and dictionaries
- Apply set and dictionary operators and methods
- Use set operations to generate desired values
- Apply dictionary methods (
keys
,values
,items
) for iterating through dictionaries
- Quiz 6: Recursion
- Determine the effect of operations on aliased data structures
- Trace the execution of recursive functions
- Complete the base case and/or recursive case of a recursive function
- Quiz 7: Object-oriented programming (OOP)
- Identify the OOP roles for code elements, and/or code elements for different OOP roles
- Map operators and other functions to corresponding class methods
- Evaluate OOP code that includes inheritance and overridden methods
- Quiz 8: Complexity analysis and searching/sorting
- Predict the time of an algorithm based on its time complexity
- Determine the time and/or space complexity of algorithm expressed in Python
- Estimate the relative performance for different search/sort algorithms for different inputs
- Quiz 9: Vectorization with NumPy and Datascience
- Apply vectorized operations to Datascience tables
- Apply NumPy vectorized operations to numeric arrays
- Translate vectorized code into “plain” Python with explicit loops with scalar operations