uwloo

MSE 240Algorithms and Data Structures

Units
0.50
Faculty
Engineering
Subject
Management Science and 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: not on the schedule. Spring 2027: schedule not out yet.

Design and analysis of data structures and algorithms with an emphasis on further development of computer programming skills. Topics include algorithms for searching, sorting, stacks, queues, trees, and graphs. Comparison of algorithms on different data structures. Solutions to common engineering problems in computer science using algorithms and data structures. Introduction to mathematical analysis of space and time complexity with a focus on designing solutions that can scale to large input sizes.

Prerequisites

  • Complete all of the following
    • Complete 1 of the following
      • Must have completed the following:
        • MSE121 - Introduction to Computer Programming (0.50)
      • Must have completed the following:
    • Students must be in level 2A or higher
    • Enrolled in H-Management Engineering

Antirequisites

  • Not completed nor concurrently enrolled in any of the following:
    • BME122 - Data Structures and Algorithms (0.50)
    • CS240 - Data Structures and Data Management (0.50)
    • CS240E - Data Structures and Data Management (Enriched) (0.50)
    • ECE250 - Algorithms and Data Structures (0.50)
    • MTE140 - Algorithms and Data Structures (0.50)
    • SYDE223 - Data Structures and Algorithms (0.50)

Leads to

Fall 2026 sections

Enrolment from UW Open Data, which can trail Quest by up to two days. Instructors and rooms: Schedule of Classes.
SectionClassEnrolledMeets
LEC 001528295 / 109TTh 14:30–15:50
TUT 101528395 / 109F 11:30–12:20

Reviewed on UW Flow

83% liked it69% easy91% useful

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

  • If you've ever done any work in python, this course will probably be pretty easy. Midterms and finals were fair. Assignments were easy, but time consuming.

    Oct 2025 · liked itOn UW FlowRemove this

  • I enjoyed this course but wish it were paced a little differently. It felt like the first half was very light, and then the last 2/3 weeks were jamed with assignment and content. I wish more content was covered more in depth in this course. The 3 assignments were very long and teidious so start early!

    Dec 2024 · liked itOn UW FlowRemove this

  • Taught in Python. I had a decent understanding of it before entering the course which made it easy. It also helped that practice midterms and finals were posted that mirrored the actual exams. Looking back on it, I did not take away much from this course.

    Nov 2024 · liked itOn UW FlowRemove this

  • Honestly course is extremely behind other DSA courses offered at the uni, we barely even started DSA stuff until just before midterm, pre midterm was fully OOP review which both super basic and should have been assumed knowledge based on the previous coding course, I understand the first week but not half the semester spent on it. Puts you at a pretty big disadvantage in terms knowledge because you simply arent learning enough, but better than nothing though ig. Professor Schneider was a very engaging and a knowledgable prof, but course structure wasn't exactly there, there were no tutorials, labs(codio) were kinda useful and exams were bird. Just wished we learned more on actual DSA kinda…

    Mar 2024 · liked itOn UW FlowRemove this

  • Frustrating course due to getting walled on bottlenecks in the assignments and lack of opportunity to practice what you learned from the lectures. I understand the need for online platforms like Codio, but it's a pain to write code there and the questions suddenly get very difficult without any build-up which takes a lot of time and discourages the student, especially when the error messages are equivocal garbage. Thankfully the teacher grades the Codio exercises by effort rather than accuracy. Some other comments:
    Quizzes: Useless, poorly structured, questions are confusing, the feedback provided isn't helpful
    Assignments: Fair, but quite brutally marked. They expect us to know how to…

    Dec 2021 · liked itOn UW FlowRemove this

Discussed on r/uwaterloo

5 posts and comments in 3 threads mention MSE 240, April 2024 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

How hard is 2A compared to first year? 3 points, 1 comment

“MGTE student that completed 1A and 1B, can I expect 2A to be just as hard, or would it get easier from here on out? …”

u/ConsequenceNo3618: “… None of the courses are incredibly difficult, but they all require a fair amount of studying MSE 240 (DSA): Not really a DSA course; it's easy to understand but a lot of work due to the programming assignments MSE 251 (Stats): High school review but with a bit more distributions …”

View on RedditRemove this

Should I Transfer? 12 points, 20 comments

“Currently a first yr in Management eng, on coop. Considering that my end goal is to be in tech rather than pm (data science, software eng, etc.), would it be worth it to transfer to computer …”

u/ConsequenceNo3618: “… This is especially applicable to MSE 240 (Data Structures and Algorithms). …”

u/ConsequenceNo3618: “Our MSE 240 is not equivalent to CS 136 and I begged the CS advisors for the match but they wouldn't give it https://cs.uwaterloo.ca/current-undergraduate-students/majors/cs-course-enrollmentengineers”

u/ConsequenceNo3618: “In my opinion, it's a combination of MSE courses being watered down and the CS advisors being too bureaucratic to even consider alternatives I don't think MSE 240 is in any way comparable to CS 116. …”

View on RedditRemove this

Winter 2024

Questions for Management Engineering students: this program or UTSG CS? 1 point, 11 comments

u/KINGBLUE2739046: “- It’s an Engineering workload, it’s a lot better than ECE, much more time to do side projects, almost a joke honestly, other programs will be making fun of you for not being real engineers, no big …”

u/nyephe: “… They changed MSE 121/240 but I've never used Python in MGTE before (aside from MSE 446) R is pretty much just copy and paste from the MSE 251/253 tutorials but it's never tested I remember Excel being used in MSE 100/131/251/253/331/263/334/431/332/333/343, and this is only up …”

View on RedditRemove this

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar