Difference between revisions of "Fall 2014 Final"
From CS 61A Wiki
[unchecked revision] | [unchecked revision] |
Line 1: | Line 1: | ||
− | '''Also check the pages for [[Fall 2014 | + | '''Also check the pages for [[Fall 2014 Exam 1]] and [[Fall 2014 Exam 2]] for more resources.''' |
== Topics == | == Topics == |
Revision as of 16:46, 6 December 2014
Also check the pages for Fall 2014 Exam 1 and Fall 2014 Exam 2 for more resources.
Contents
Topics
Final Topics
- Exceptions
- Scheme
- Scheme lists and dotted lists
- Parsing (syntactic analysis)
- Eval/Apply mutual recursion
- Dynamic vs lexical scope
- Tail calls
- Iterators
- Generators and generator functions
- Streams
- SQL
The upcoming final is cumulative, meaning you're expected to be familiar following midterm 1 and 2 topics.
Midterm 2 Topics
- Data abstraction
- Lists
- Functional pairs
- The sequence abstraction
- For statements
- Ranges
- Strings
- List comprehensions
- Dictionaries
- Dictionary comprehensions
- apply_to_all, keep_if, and reduce
- Linked lists (both ADT and class representation)
- Rooted trees (both ADT and class representation)
- Mutable data
- Nonlocal statements
- Identity vs. equality
- Class statements
- Invoking methods
- Dot expression evaluation
- Attribute assignment
- Bound methods vs functions
- Class vs instance attributes
- Inheritance
- str and repr strings
- Interfaces
- Property methods
- Special methods
- Type dispatching
- Type Coercion
- Counting calls and frames
- Memoization
- Orders of growth
- Sets
- Binary search trees
Midterm 1 Topics
- Primitive expressions
- Call expressions
- Import statements
- Expression trees
- Assignment statements
- Pure and non-pure functions
- Def statements and user-defined functions
- Applying user-defined functions
- Environments
- Environment diagrams
- Arithmetic operators
- Local assignment
- Conditional statements
- Boolean contexts
- Boolean operators
- Iteration with while statements
- Passing functions as arguments
- Nested def statements
- Functions as returned values
- Lambda expressions
- Currying
- Recursive functions
- Mutual recursion
- Tree recursion
Skills
- Writing procedures in Scheme
- Figuring out the first x elements of an iterator/generator/stream
- Writing SQL queries, especially recursive ones
All the skills from Exam 2 still apply:
- Draw Box and pointer diagrams for mutable data structures
- Drawing Environment diagrams with nonlocal
- Reading the problem critically/figuring out what the problem is asking
- Understanding doctests
- Designing classes for Object Oriented Programming problems
- Identifying the Theta of a function
All the skills from Exam 1 still apply:
- Identifying the Operator and Operands
- Identifying Domain and Range
- Environment Diagrams
Reviews and Guides
- Immutable vs Mutable data
- Complete walk-through of Fall 2013 Midterm 2
- Youri's tutorials (environment diagrams, OOPs, Orders of Growth)
- Guide to Orders of Growth and Function Runtime
Practice Problems
- Environment Diagram Practice
- Albert Wu's Midterm 2 Practice Problems
- Andrew Huang's Midterm 2 Review Questions
- Mark Miyashita's old TA website
- Youri Park's Practice Problems
Guerrilla Section Worksheets
Practice Midterms
... Can be found on the Past exams page.
Problems to Focus on from Past exams
Not comprehensive, but a good start Can be sorted by year or by Topic! (Default is by topic)
Question | Topic |
---|---|
Summer 2013 Final (9b) | Iterators and Generators |
Fall 2011 Final (6a) | Iterators and Generators |
Fall 2013 Final (3e) | Calculator |
Summer 2013 Midterm 2 (7) | Scheme |
Fall 2013 Final (1c) | Scheme |