EEL4837 Programming for Electrical Engineers II (Fall 2025)

Programming remains an essential component of virtually every aspect of Engineering. Writing correct and efficient programs requires an understanding of the underlying foundations, including implementation, manipulation, and analysis of structured data, understanding how algorithms are built on top of such data, and navigating trade-offs between program performance and resource constraints. This course covers the foundations of programming specifically targeted toward Electrical Engineers. It will cover the implementation and use of data structures in solving programming problems, including stacks, queues, matrices, trees, and graphs.  Students will practice programming a variety of algorithms and learn several algorithmic design techniques (recursion, divide-and-conquer, greedy algorithms, and dynamic programming).  The course will include excursions illustrating the application of these techniques in Electrical Engineering.

Credits: 3. 

Teaching assistants:

  • Allen Sarmiento
  • Emerson Schmidt
  • Jeremy Seitz
  • Luke Slaughter
  • Norman Smith

New this year: two midterms instead of one, courtesy of GenAI!

Published
Categorized as Course