uwloo

ECE 406Algorithm Design and Analysis

Units
0.50
Faculty
Engineering
Subject
Electrical and Computer Engineering

When it runs

  1. F24
  2. W25
  3. S25
  4. F25
  5. W26
  6. S26
  7. F26
  8. W27
  9. S27

Ran in 3 of the last 7 terms. Winter 2027: scheduled, 2 lecture sections. Spring 2027: schedule not out yet.

Design and analysis of efficient, correct algorithms. Advanced data structures, divide-and-conquer algorithms, recurrences, greedy algorithms, dynamic programming, graph algorithms, search and backtrack, inherently hard and unsolvable problems, approximation and randomized algorithms, and amortized analysis.

Prerequisites

  • Complete all of the following
    • Complete 1 of the following
      • Must have completed at least 1 of the following:
        • BME122 - Data Structures and Algorithms (0.50)
        • ECE250 - Algorithms and Data Structures (0.50)
        • MSE240 - Algorithms and Data Structures (0.50)
        • MTE140 - Algorithms and Data Structures (0.50)
        • SYDE223 - Data Structures and Algorithms (0.50)
      • Must have completed the following:
    • Students must be in level 3B or higher

Antirequisites

  • Not completed nor concurrently enrolled in any of the following:
    • CS341 - Algorithms (0.50)
    • CS466 - Algorithm Design and Analysis (0.50)

Leads to

No course lists it as a requisite.

Winter 2027 sections

Enrolment from UW Open Data, which can trail Quest by up to two days. Instructors and rooms: Schedule of Classes.
SectionClassEnrolledMeets
LEC 00145690 / 148TTh 08:30–09:50
Jan 20 16:00–17:20
Feb 10 16:00–17:20
Mar 10 16:00–17:20
Mar 31 16:00–17:20
LEC 7011856114 / 9999Online or by arrangement
LAB 20152360 / 148Online or by arrangement
TUT 10152350 / 148W 19:00–19:50

Resources

Around the web

Found by uwloo’s link finder, which checks that each page names ECE 406.

Suggest a resource.

Reviewed on UW Flow

100% liked it65% easy92% useful

From 19 ratings and 6 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.

  • Software interview questions version 2.0. As useful as that sounds, and as easy that sounds.

    Mar 2016 · liked it · 5 found this helpfulOn UW FlowRemove this

  • This is NOT as easy as people say it is. Expect to put in some work for it

    Feb 2020 · liked it · 2 found this helpfulOn UW FlowRemove this

  • Interesting course, with more than fair exams, and pretty easy marking.

    Apr 2026 · liked itOn UW FlowRemove this

  • good course with fair exams; if you've done leetcode before the course should be quite straightforward

    Apr 2025 · liked itOn UW FlowRemove this

  • Course breakdown is midterm+final+top 5 of 6 assignments. Graded work is pretty involved and very conceptual.
    The assignments are due about every 2 weeks and consist of 4 conceptual questions and 1 coding question in Python. This course focuses mostly on algorithm concepts as opposed to practical coding skills. The course lectures follow the textbook (Algorithms by S. Dasgupta) pretty directly and previous lectures are on youtube so look there to get a sense of the course.

    Apr 2024 · liked itOn UW FlowRemove this

Discussed on r/uwaterloo

31 posts and comments in 30 threads mention ECE 406, December 2014 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.

Spring 2024

Winter 2024

Fall 2023

Spring 2023

ECE406 1 point, 1 comment

u/Wide_Conflict5602: “hi guys! im an incoming exchange student. i would like to map ECE406 back to my local university but i would need more information about the course syllabus! I cant seem to find it online, do dm me if you are able to help out!!”

View on RedditRemove this

Winter 2023

Spring 2022

Winter 2022

ECE transfer to Math advise 0 points, 2 comments

“I just finished my 2b term in ECE(CE) and I also applied to BMath, as I feel ECE courses are not very useful or interesting. …”

u/amxnday: “… i’m currently arranging my upcoming terms so that i’m only taking software related courses in 3B 4A 4B which is doable because there are a lot of software TEs like ECE 351, 356, 358, 452, 455, 457, 406, 451 etc.”

View on RedditRemove this

Fall 2021

Easiest ECE TE 4 points, 4 comments

“What's the easiest ECE TE you've taken? Who was your favourite ECE prof?”

u/bmocJR: “… ECE 406 (With Stephen Smith) was mostly a rehash of ECE 250, so if you did fine there you'd do fine in this one as well, still learned some useful stuff though.”

View on RedditRemove this

Winter 2021

Fall 2020

Winter 2020

Graduated exactly 1 year ago today, AMA about ECE or Waterloo 43 points, 63 comments

“I just realized that my last exam ever was exactly one year ago today: Music 246, Apr 24, 2019 - 7:30PM at STC 1012 Kind of bored with this quarantine shit so feel free to AMA about ECE, Waterloo or …”

u/ddddc1: “What technical electives did you take? And what rating would you give each course?”

u/evilcubed: “… and then in 4B I took ECE 406 (advanced data structures and algo), honestly pretty waste course, basically more proofs and math heavy course version of ECE 250. id rate it 5/10. The other TE I took was ECE 493 (autonomous vehicles). …”

View on RedditRemove this

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar