CECS 328 Weekly Assignments

  1. Big-O Assignment
  2. Algorithm Complexity Assignment. Chapter 2, problems 7, 8, 10-14, 15, 17, 18. Related assessments: Quiz 2 (February 12th), Exam 1 (February 26th)
  3. Lab Assignment 1 on the complexity of code fragments
  4. Lab Assignment 2 on root finding
  5. Lab Assignment 3 on word counting     Lab Assignment 3 C Source Code
  6. Sorting Assignment
  7. Heaps and Trees Assignment
  8. Binary Search Tree Assignment. Chapter 4, problems 9, 19, 20, 27-29a, 35-37, 40, 44-46. Additional problems:
    1. Using the TreeNode data structure described in lecture, write a function for deciding if a binary tree is balanced.
    2. Using the TreeNode data structure described in lecture, write a function for deciding if a binary tree is a binary search tree.
    3. Using the TreeNode data structure described in lecture and assuming that the data is of type integer, and that the tree is a binary search tree, write a function that prints in order the integers stored in the tree.
    Related assessments: Quiz on April 23rd, Final Exam on May 20th
  9. Final Programming Assignment
  10. Graph Algorithms Assignment. Chapter 9, problems 1,4,5,7a,10-17,20,21,23-26,30,36. Related assessments: Quiz on May 6th, Final Exam on May 20th
  11. Dynamic Programming Assignment. Chapter 10, problems 28, 31. Additional Problem. Given seven objects with respective weights 3,5,2,4,3,1,4, and respective profits 42, 50, 26, 28, 33, 11, 48, use the 0-1 Knapsack Dynamic Programming algorithm to optimally fill a knapsack having capacity 10. Related assessments: Final Exam on May 20th