VIU — CSCI 260

Course Schedule

✶ ㎲ ✶

Instructor

VIU Profile:  Dr Russell Campbell
Email: Russell.Campbell [at] viu [dot] ca
Office: Nanaimo Campus, Building 315, Room 218

Email me to set up a time for discussion on Zoom if needed.


Schedule

The following plan for weekly topics, project milestones, assignments, and labs is only a draft and is subject to change.

Week Topic
Sep 7–11 course overview; discrete math review: logs, proof, mathematical induction; big-Oh, big-Omega, big-Theta
Sep 14–18 runtime of algorithms: code blocks, loops, nested loops, recursion; union-find algorithms
Sep 21–25 runtime of algorithms: memoization; analysis of union-find
Sep 28–Oct 2 The Master Theorem; divide-and-conquer algorithms; searching and sorting algorithms; custom ordering of elements
Oct 5–9 linked lists; creating linked lists using union-find data structures; abstract data types
Oct 12–16 dictionaries/maps
Oct 19–23 hashing (closed/open)
Oct 26–30 binary-search trees and balancing height
Nov 2–6 AVL trees; red-black trees; heaps
Nov 9–13 (study week)
Nov 16–20 graph representations; calculating degree, walks, shortest-path, distance, diameter, the triangle inequality; The Four-Colour Theorem
Nov 23–27 graph algorithms: breadth-first search; depth-first search; minimum-spanning trees
Nov 30–Dec 4 dynamic programming; greedy algorithms; shortest-path algorithms: Dijkstra's, Prim's, Kruskal's
Dec 7–11 (CSCI 320: brief, informal preview)

Midterms

  • Oct 6 all topics from Sep 7 up to and including Oct 2
  • Nov 5 all topics from Sep 7 up to and including Nov 3

Assignments

  • Sep 14–Oct 2 Assignment 1 (TBD)
  • Oct 8–Nov 3 Assignment 2 (TBD)
  • Nov 6–Dec 3 Assignment 3 (TBD)

Labs

Each week will have a lab (~10 total), EXCEPT for the following weeks:

  • Sep 7–11 (no lab)
  • Nov 2–6 (no lab)
  • Nov 9–13 (no lab)
  • Dec 7–11 (no lab)

Content of labs will support weekly topics and assignments. You will receive a mark for completing, so it is to your advantage to try, explore concepts, and even share what you discover with others in the class.