ELEC 379 Algorithms with Engineering Applications Units: 4.00
Algorithm design and analysis; techniques based on divide and conquer, branch and bound, dynamic programming, and the greedy approach; computer engineering applications such as circuit partitioning and logic circuit technology mapping; computational complexity and NP-completeness.
(Lec: 3, Lab: 0.5, Tut: 0.5)
(Lec: 3, Lab: 0.5, Tut: 0.5)
Requirements: Prerequisites: ELEC 278, ELEC 270 or any discrete mathematics course
Corequisites:
Exclusions: CMPE 365
Offering Term: F
CEAB Units:
Mathematics 0
Natural Sciences 0
Complementary Studies 0
Engineering Science 24
Engineering Design 24
Offering Faculty: Smith Engineering
Course Learning Outcomes:
- Understand and apply the mathematics for order of growth and recurrences for characterizing algorithm running times.
- Understand different algorithmic techniques, characterize their requirements for obtaining optimal solutions, and describe their application to representative problems.
- Describe aspects of complexity theory and NP-completeness, including decision algorithms, verification algorithms, complexity classes, and reductions.
- Describe graph algorithms, characterize their running times, and apply them to sample problems.
- Design/develop an appropriate algorithm for a specified problem, consider issues related to correctness, and characterize running time.