EECE.3220: Data Structures

Instructor: Dr. Michael Geiger

Spring 2019

 

Course Schedule

This schedule contains a tentative schedule of topics we will cover throughout the term; this schedule is subject to change. As the semester progresses, I will update the schedule to show the actual dates on which we cover material, as well as provide links to the lecture slides and programming assignments. Note that most lectures are associated with some section(s) of the textbook, which I suggest you read prior to class. Additional reading material includes relevant tutorials from http://www.cplusplus.com.


Exams: The first exam will be held Monday, February 25 from 3-5 PM in Ball 214, and the second exam will likely be held Monday, April 1 from 3-5 PM (room TBD). The third exam will be held Wednesday, May 8, from 3-6 PM in Ball 208.


Lecture Recordings: Echo360 recordings are available from https://echo360.org/. Select "Log in via Institution," choose "University of Massachusetts-Lowell" from the drop-down list, then log in with your UML e-mail address and password. You will then be able to view lecture recordings from all courses in which you are enrolled, including this one. Recordings are also available on the course Blackboard site.

 

Week Date (Mon.) Lecture Topics Handouts Reading Assignments

1

1/21

 No Monday lecture--Martin Luther King, Jr. Day

 1. Course introduction; going from C to C++

 2. C to C++: basic I/O

 Syllabus

 Lec. 2 questions

 W: 2.2, C.6-C.11, variables and types, operators

 F: Program structure, basic I/O, file I/O

2

1/28

 3. C to C++: structs

 4. C to C++: functions

 5. C to C++: I/O manipulators

 Lec. 3 questions

 Lec. 4 questions

 Lec. 5/6 questions

 M: Structures

 W: 2.4, C.11, functions

 F: setprecision, showpoint

 Program 1

 (due 2/8)

3 2/4

 6. C to C++: strings

 7. Algorithmic complexity

 8. Algorithmic complexity (continue Lec. 7 slides)

 Manipulator code example

 Lec. 7-9 questions

 M: String library (very detailed)

 W: 10.4

 F: None

4 2/11

 9. Algorithmic complexity (finish Lec. 7 slides)

 10. Abstract data types; class intro

 No Friday lecture (cancelled)

 Lec. 10-12, 14 questions

 M: None

 W: 3.1-3.3, 4.2, classes

 Homework 1

 (due 2/20)

 HW 1 soln

5 2/18

 No Monday lecture--Presidents Day

 Tuesday 2/19 follows Monday schedule

 11. Classes: definition, data/function members

 12. Classes: constructors (continue Lec. 11 slides)

 13. Exam 1 Preview

 No new reading

6 2/25

 EXAM 1: Monday, 2/25, 3-5 PM, Ball 214

 14. Class relationships

 15. Class relationships (finish Lec. 14 slides)

7 3/4

 No Monday lecture--university closed

 16. Program 2 overview

 17. Exam 1 Review

 Program 2

 (due 3/21)

 Header files:

 DEntry.h

 Dictionary.h

 Sample input files:

 wordlist1.txt

 wordlist2.txt

8 3/11

 No classes--Spring Break

9 3/18

 18. Dynamic allocation

 19. Stack intro

 20. Array-based stacks: def., constructor, destructor

 Stack example code (full array-based solution)

 Stack.h

 Stack.cpp

10 3/25

 21. Array-based stacks: push, pop, read (finish Lec. 20 slides)

 22. Linked stacks, Prog. 3 overview (no slides--watch lecture video!!!)

 23. Exam 2 Preview

 Program 3

 (due 4/8)

11 4/1

 EXAM 2: Monday, 4/1, 3-5 PM, Ball 214

 24 & 25. Queues (see Lec. 27 slides for a decent explanation of queues--slides we used these days aren't worth posting!)

12 4/8

 26. Exam 2 Review

 Tuesday, 4/9--last day to withdraw

 27. Array-based queues

 28. Linked queues (see example code)

 Array-based queue example code

 Queue.h

 Queue.cpp


 Linked queue example code

 LQueue.h

 LQueue.cpp

13 4/15

 No Monday lecture--Patriots' Day

 29. Linked queues

 30. Linked lists

 Program 4

 (due 5/1)


 Card.h, Card.cpp

 Deck.h, Deck.cpp

 Main file

14 4/22

 31. P4 preview; finish linked lists

 No lecture Wednesday, Friday

 Program 5

 (extra credit; due 5/9)

15 4/29

 32. Binary search trees; heaps/heapsort

 33. Priority queues; hash tables

 34. Exam 3 Preview

 Classes end Friday, 5/3

 

  5/8

 EXAM 3: Wednesday, 5/8, 3-6 PM, Ball 208

 Course evaluation form--must be completed before exam

 


Last updated 08/28/2019 10:41 PM