uwloo

MTE 140Algorithms and Data Structures

Units
0.50
Faculty
Engineering
Subject
Mechatronics Engineering

When it runs

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

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

This course emphasizes the following topics: structured software design data structures, abstract data types, recursive algorithms, algorithm analysis and design, sorting and searching, hashing, and problem-solving strategies.

Prerequisites

  • Complete all of the following
    • Must have completed at least 1 of the following:
      • ECE150 - Fundamentals of Programming (0.50)
      • MTE121 - Digital Computation (0.50)
    • Students must be in level 1B or higher
    • Enrolled in H-Mechatronics Engineering

Antirequisites

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

Leads to

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 00146590 / 130TTh 08:30–09:50
TTh 08:30–09:50
Jan 14 13:30–14:20
Jan 21 13:30–14:20
Mar 11 13:30–14:20
LEC 70118780 / 9999Online or by arrangement
LAB 10146600 / 130T 14:30–16:20
T 14:30–16:20
TST 20150900 / 130Feb 26 08:30–10:20

Reviewed on UW Flow

86% liked it81% easy97% useful

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

  • Pourmohammadali is a shit prof man

    Apr 2022 · didn’t like it · 1 found this helpfulOn UW FlowRemove this

  • The content is important but my prof was horrendous which made the course unenjoyable.

    Apr 2022 · didn’t like it · 1 found this helpfulOn UW FlowRemove this

  • Very interesting content but presented poorly, it's a shame that the assignments were often disconnected from what was taught in class, and TAs were not very helpful either. The class was more than half empty for most of the term

    Mar 2022 · didn’t like it · 1 found this helpfulOn UW FlowRemove this

  • Professor Umar is the best, very engaging prof! Interesting concepts that will help you in technical software interviews

    Aug 2026 · liked itOn UW FlowRemove this

  • Course was fine

    Aug 2025 · didn’t like itOn UW FlowRemove this

Discussed on r/uwaterloo

50 posts and comments in 39 threads mention MTE 140, 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

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: “Note: If you stay in MGTE, then I recommend asking for permission to substitute some of our core courses with other departments/faculties since our courses tend to be watered down. …”

u/1000Ditto: “it's ridiculous imo, even tron or syde dsa is equal to 240 (mte140 <-> cs240) but msci240<cs240”

View on RedditRemove this

Spring 2022

Advice for Waterloo Tron 3 points, 21 comments

“Hi Everyone, So I've decided to accept my offer for Waterloo Tron. I need some help. I don't really have programming/coding experience, and I plan to do some stuff over the summer to learn. …”

u/troviinstaller: “Enjoy your summer broski no need to grind anymore! A significant portion of my class had no coding experience at all, and MTE 121 will get you up to speed from the ground up”

u/steven_0: “It’s a site for programming interview questions. You can really only start grinding it during/after mte 140. Incredibly painful, but unfortunately necessary in todays market to land above average paying cs jobs.”

View on RedditRemove this

Winter 2022

Fall 2021

Winter 2021

How much programming to mechatronics engineering majors do? 11 points, 35 comments

“I want to study something robotics related but I also love programming. Approximately how many programming/CS classes do TRON students take? …”

u/Anonym-777777: “Don’t choose tron, you’ll regret it”

u/Anonym-777777: “… Sure you get to do programming on Gene 121, Mte 140 and, Mte 241. But other than that is pure mechanical/electrical stuff. There was some meh programming on Mte 325, but definitely not significant. If you get a programming job, you’ll be learning most of the programming at work. …”

View on RedditRemove this

Fall 2020

Igor Ivkovic Remembrance Thread 1,058 points, 131 comments

“Devastating news today, our amazing and beloved professor Igor Ivkovic tragically passed away today. Use this thread to share your thoughts or special memories. …”

u/imTall-: “Great prof. He did a fantastic job in MTE 140 when I had him, and he was also a great person from interacting with him on the TA side.”

u/brandxntu: “I had the pleasure of taking Igor's MTE140 this summer. You could tell that he was passionate about the course content, but more importantly he really gave a damn about all of us. …”

View on RedditRemove this

Spring 2020

Switching from mech eng -> mechatronics 2A 1 point, 1 comment

“Anyone know anything about this process? I was wondering about the difficulty of the course material after the transition, what average may be required for a successful switch, and if I will have to …”

u/CounterbalancedOne: “… You'll have to make up the data structures and algorithms course (MTE 140 I think?) before 2B. Everyone I know who switched all did the course online through Athabasca during a coop term. …”

View on RedditRemove this

Landing a software-related coop 0 points, 5 comments

u/NT3101: “… I'm trying to get some personal projects under my belt, and I actually have permission from the MTE 140 (Algorithms and data structures) professor to take the course in the coming spring term so I'm hoping that it will give me some useful knowledge to land a software-related …”

u/ayee1155: “If I may ask, how did you get permission to take MTE 140?”

u/sighying: “mte140 is a pretty basic data structures course so I wouldn’t expect it to give you the knowledge to land a software job but don’t get me wrong it’s still a good beginner course and the profs who teach it are generally pretty good. …”

View on RedditRemove this

Winter 2020

[Serious] What should I expect from TRON? 36 points, 34 comments

“Hi all, I recently accepted my offer for Mechatronics Engineering at Waterloo (yay). However, as I keep reading about people's experiences with the program on this subreddit, I'm not really sure what …”

u/ApatheticPost: “… What commands do I send to the motors?" Software: - MTE 140 - Algorithms and Data Structures - Good software course. Loved it. …”

View on RedditRemove this

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar