Programming for Electrical Engineers II

EEL 4837  

Class Periods:   MWF Period 6 (12:50 PM – 1:40 PM)

Location:   NEB 202

Academic Term:  Fall 2023


Name: Sandip Ray
Office Phone Number: +1 (352) 392-1605
Office Hours:  W 2:30-3:30 pm Zoom

Teaching Assistant/Peer Mentor/Supervised Teaching Student:

Please contact through the Canvas website

Name: Tashfia Alam, Emmanuel Elias, Cody Flynn
Office Hours:   Tuesday 2:00-2:30pm (Emmanuel), Thursday 2:00-2:30pm (Cody), Friday 2:00-2:30pm (Tashfia)
TA Office Hours Zoom Link

Course Description

Programming has become an essential component of virtually every aspect of Engineering.  However, writing efficient program requires understanding of the underlying foundations, including implementation, manipulation, and analysis of structured data, understanding how algorithms are built on top of such data, and approaches and trade-offs involved between program performance and resource constraints. This course covers the underlying foundations of programming specifically targeted towards Electrical Engineers. It will cover implementation and use of data structures for use in solving programming problems, including queues, trees, tables and graphs.  Algorithm development including recursive techniques will be discussed, and several algorithmic techniques (e.g., greedy, dynamic programming, branch and bound) will be presented.  The course will include several excursions illustrating the use of these techniques on a variety of Electrical Engineering domains.

Course Pre-Requisites / Co-Requisites

EEL 3834 Programming for Electrical and Computer Engineers, or equivalent proficiency in programming is required. Note that students with no proior familiarity with C++ should be prepared to gain necessary C++ background within the first few weeks; otherwise they will be at a disadvantage as the course progresses. Also, students who have taken no prior course on Linear Algebra should be prepared to study and gain familiarity with matrices before the first excursion.

Course Objectives

Upon completion of the course, students will:

  • Have grasp of fundamentals of data structures and algorithms, e.g., lists, queues, stacks, divide-and-conquer, dynamic programming, etc.
  • Be able to assess the impact of data structures and algorithms on program performance
  • Have hands-on experience on implementing some of the important data structures and algorithms
  • Have experience on the role of various specific data structures in various applications from Electrical Engineering

Materials and Supply Fees


Relation to Program Outcomes (ABET):

Outcome Coverage*
1.      An ability to identify, formulate, and solve engineering problems by applying principles of engineering, science, and mathematics. High
2.      An ability to apply both analysis and synthesis in the engineering design process, resulting in designs that meet desired needs. High
3.      An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions. Medium
4.      An ability to communicate effectively with a range of audiences Medium
5.      An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts. Low
6.      An ability to recognize the ongoing need for additional knowledge and locate, evaluate, integrate, and apply this knowledge appropriately. High
7.      An ability to function effectively on teams that establish goals, plan tasks, meet deadlines, and analyze risk and uncertainty Medium

*Coverage is given as high, medium, or low.  An empty box indicates that this outcome is not covered or assessed in the course.

Required Textbooks and Software

  •  Mark Allen Weiss: Data Structures and Algorithms in C++ 4th Edition, Addison-Wesley (Required)

 Recommended Materials

  • Ellis Horowitz, Sartaj Sahni,Susan Anderson-Freed. Fundamentals of Data Structures in C, 2nd Edition, W. H. Freeman (Recommended)
  • Cormen, Leiserson, Rivest, Stein: Introduction to Algorithms 3rd Edition, MIT Press (Optional)

Course Plan (Tentative)

The course includes theoretical material on data structures and algorithms and excursions that enable the students to dive deeper into specific application areas. Each excursion is due three weeks after it has been discussed/presented in class, and involves implementing algorithms involved in the target domain.

Week Content Note
1 Course Overview, Introduction to Time Complexity, Basic Data Structures  
2 Sorting Algorithms, Stacks, Recursion HW1 Out
3 Matrices  
4 Excursion 1: Circuit Analysis HW1 In
5 Queues, and Linear Lists  
6 Binary Trees HW2 Out
7 Graph and Graph Algorithms HW2 In
8 In-class Exam 1  
9 Excursion 2: Embedded Systems HW3 Out
10 Greedy Algorithms HW3 In
11 Dynamic Programming  
12 Excursion 3: EDA (if time) HW4 Out
13 Hashing and Compression HW4 In
14 Search Trees  
15 Make up: Additional Topics  


 Grading Policy

Percent Grade Grade Points
93.0 – 100 A 4.00
90.0 – 92.9 A- 3.67
87.0 – 89.9 B+ 3.33
83.0 – 86.9 B 3.00
80.0 – 82.9 B- 2.67
77.0 – 79.9 C+ 2.33
73.0 – 76.9 C 2.00
70.0 – 72.9 C- 1.67
67.0 – 69.9 D+ 1.33
63.0 – 66.9 D 1.00
60.0 – 62.9 D- 0.67
0 – 59.9 E 0.00

The class is not curved. If everyone does well, everyone can get an A.

More information on UF grading policy may be found at:

Students Requiring Accommodations

Students with disabilities who experience learning barriers and would like to request academic accommodations should connect with the disability Resource Center by visiting It is important for students to share their accommodation letter with their instructor and discuss their access needs, as early as possible in the semester.

Course Evaluation

Students are expected to provide professional and respectful feedback on the quality of instruction in this course by completing course evaluations online via GatorEvals. Guidance on how to give feedback in a professional and respectful manner is available at Students will be notified when the evaluation period opens, and can complete evaluations through the email they receive from GatorEvals, in their Canvas course menu under GatorEvals, or via Summaries of course evaluation results are available to students at


In-Class Recording

Students are allowed to record video or audio of class lectures. However, the purposes for which these recordings may be used are strictly controlled. The only allowable purposes are (1) for personal educational use, (2) in connection with a complaint to the university, or (3) as evidence in, or in preparation for, a criminal or civil proceeding. All other purposes are prohibited. Specifically, students may not publish recorded lectures without the written consent of the instructor.

A “class lecture” is an educational presentation intended to inform or teach enrolled students about a particular subject, including any instructor-led discussions that form part of the presentation, and delivered by any instructor hired or appointed by the University, or by a guest instructor, as part of a University of Florida course. A class lecture does not include lab sessions, student presentations, clinical presentations such as patient history, academic exercises involving solely student participation, assessments (quizzes, tests, exams), field trips, private conversations between students in the class or between a student and the faculty or lecturer during a class session.

Publication without permission of the instructor is prohibited. To “publish” means to share, transmit, circulate, distribute, or provide access to a recording, regardless of format or medium, to another person (or persons), including but not limited to another student within the same class section. Additionally, a recording, or transcript of a recording, is considered published if it is posted on or uploaded to, in whole or in part, any media platform, including but not limited to social media, book, magazine, newspaper, leaflet, or third party note/tutoring services. A student who publishes a recording without written consent may be subject to a civil cause of action instituted by a person injured by the publication and/or discipline under UF Regulation 4.040 Student Honor Code and Student Conduct Code.

University Honesty Policy

UF students are bound by The Honor Pledge which states, “We, the members of the University of Florida community, pledge to hold ourselves and our peers to the highest standards of honor and integrity by abiding by the Honor Code. On all work submitted for credit by students at the University of Florida, the following pledge is either required or implied: “On my honor, I have neither given nor received unauthorized aid in doing this assignment.” The Conduct Code ( specifies a number of behaviors that are in violation of this code and the possible sanctions.  If you have any questions or concerns, please consult with the instructor or TAs in this class.

Commitment to a Safe and Inclusive Learning Environment

The Herbert Wertheim College of Engineering values broad diversity within our community and is committed to individual and group empowerment, inclusion, and the elimination of discrimination.  It is expected that every person in this class will treat one another with dignity and respect regardless of gender, sexuality, disability, age, socioeconomic status, ethnicity, race, and culture.

If you feel like your performance in class is being impacted by discrimination or harassment of any kind, please contact your instructor or any of the following:

  • Your academic advisor or Graduate Program Coordinator
  • Jennifer Nappo, Director of Human Resources, 352-392-0904,
  • Curtis Taylor, Associate Dean of Student Affairs, 352-392-2177,
  • Toshikazu Nishida, Associate Dean of Academic Affairs, 352-392-0943,

Software Use

All faculty, staff, and students of the University are required and expected to obey the laws and legal agreements governing software use.  Failure to do so can lead to monetary damages and/or criminal penalties for the individual violator.  Because such violations are also against University policies and rules, disciplinary action will be taken as appropriate.  We, the members of the University of Florida community, pledge to uphold ourselves and our peers to the highest standards of honesty and integrity.

Student Privacy

There are federal laws protecting your privacy with regards to grades earned in courses and on individual assignments.  For more information, please see:

Campus Resources:

Health and Wellness

Covid-19 Protocols:

  • You are expected to wear approved face coverings at all times during class and within buildings even if you are vaccinated. Please continue to follow healthy habits, including best practices like frequent hand washing. Following these practices is our responsibility as Gators.
  • If you are sick, stay home and self-quarantine. Please visit the UF Health Screen, Test & Protect website about next steps, retake the questionnaire and schedule your test for no sooner than 24 hours after your symptoms began. Please call your primary care provider if you are ill and need immediate care or the UF Student Health Care Center at 352-392-1161 (or email to be evaluated for testing and to receive further instructions about returning to campus. UF Health Screen, Test & Protect offers guidance when you are sick, have been exposed to someone who has tested positive or have tested positive yourself. Visit the UF Health Screen, Test & Protect website for more information.

U Matter, We Care:

Your well-being is important to the University of Florida.  The U Matter, We Care initiative is committed to creating a culture of care on our campus by encouraging members of our community to look out for one another and to reach out for help if a member of our community is in need.  If you or a friend is in distress, please contact so that the U Matter, We Care Team can reach out to the student in distress.  A nighttime and weekend crisis counselor is available by phone at 352-392-1575.  The U Matter, We Care Team can help connect students to the many other helping resources available including, but not limited to, Victim Advocates, Housing staff, and the Counseling and Wellness Center.  Please remember that asking for help is a sign of strength.  In case of emergency, call 9-1-1.

Counseling and Wellness Center:, and  392-1575; and the University Police Department: 392-1111 or 9-1-1 for emergencies.

Sexual Discrimination, Harassment, Assault, or Violence

If you or a friend has been subjected to sexual discrimination, sexual harassment, sexual assault, or violence contact the Office of Title IX Compliance, located at Yon Hall Room 427, 1908 Stadium Road, (352) 273-1094,

Sexual Assault Recovery Services (SARS)

Student Health Care Center, 392-1161.

University Police Department at 392-1111 (or 9-1-1 for emergencies), or

Academic Resources

E-learning technical support, 352-392-4357 (select option 2) or e-mail to

Career Resource Center, Reitz Union, 392-1601.  Career assistance and counseling;

 Library Support, Various ways to receive assistance with respect to using the libraries or finding resources.

 Teaching Center, Broward Hall, 392-2010 or 392-6420. General study skills and tutoring.

Writing Studio, 302 Tigert Hall, 846-1138. Help brainstorming, formatting, and writing papers.

 Student Complaints Campus:;

 On-Line Students Complaints: