Learning Objectives

The subset of learning objectives that you can demonstrate your proficiency/mastery on for quiz 10 are (all at mastery level):

  1. Defining variables with appropriate type in Java
  2. Writing loops (definite and indefinite) in Java
  3. Writing conditional statements in Java
  4. Defining methods in Java
  5. Instantiating and using objects in Java
  6. Using interfaces
  7. Using inheritance
  8. Using linked lists
  9. Using arrays
  10. Explaining time complexity of linked list operations
  11. Explaining time complexity of array operations
  12. Using stacks
  13. Explaining time complexity of stack operations
  14. Using queues
  15. Explaining time complexity of queue operations
  16. Selecting the appropriate data structure when solving a problem
  17. Comparing pros and cons of different ADTs and data structures
  18. Explaining quicksort
  19. Explaining heapsort
  20. Explaining time complexity of quicksort
  21. Explaining time complexity of heapsort
  22. Using recursion
  23. Using balanced search trees
  24. Using heaps
  25. Demonstrating breadth-first search
  26. Analyzing time complexity of breadth-first search
  27. Demonstrating depth-first search
  28. Analyzing time complexity of depth-first search
  29. Demonstrating hash tables
  30. Explaining time complexity of hashing

Because this is a self-scheduled exam, you can’t bring your checklist yourself. Instead, you can fill out this form by Wednesday March 6th at 10pm and I will print and include them in the exam for you.

Suggestions

Good ways to study for the quizzes are:

  • Finish any labs that you hadn’t finished or redo ones that you did finish
  • Go back over the readings/videos relevant to the learning objectives
  • Try any of the exercises at the ends of relevant chapters that are about the learning objectives
  • Work on the current homework, since it usually overlaps with the quiz objectives
  • Attend the prefect sessions