Class Description
This course covers techniques relevant to program design and selection of data structures for larger programs. Topics covered include design techniques, effective use of recursion, algorithmic efficiency and O-notation, linked-lists, stacks, queues, trees, hash tables, heaps, graphs and sorting and searching techniques. Extensive programming of a variety of data structures is required.
Textbook
Hands-On Data Structures and Algorithms with Python:
Store, manipulate, and access data effectively and boost the performance
of your applications, 3rd Edition
Quizzes
The quizzes are multiple-choice, online, and open-book. However, you may not ask other people to help you during the quizzes. You will need to study the textbook chapter
before the lecture covering it, and take the quiz before that class.
Each quiz is due 30 min. before class. Each quiz has 5 questions, you have ten minutes to take it, and you can make two attempts. If you take the quiz twice, the higher score counts.
Use this Canvas server:
Enroll Here ·
View Course ·
Reset password
Schedule
Date Due Topic
Mon 8-26
Class Introduction
VIDEO
VIDEO
Wed 8-28
1. Python Data Types and Structures
Demo: VP 20
VIDEO
VIDEO
Mon 9-2
Holiday
Wed 9-4
Binary Games: Nybbles
Demos: VP 21, VP 23
VIDEO
VIDEO
VIDEO
Mon 9-9 Quiz Ch 1 & 2 VP 11
2. Introduction to Algorithm Design
Binary Games: Bytes
Demos: VP 22, C 106
VIDEO
VIDEO
VIDEO
VIDEO
Wed 9-11
Demos: Binary Games: Hex , VP 24, VP 25
VIDEO
VIDEO
VIDEO
VIDEO
Mon 9-16 Quiz Ch 3 VP 20 & 21
3. Algorithm Design Techniques and Strategies
Demos: VP 12, VP 26
VIDEO
VIDEO
VIDEO
Wed 9-18
3. Algorithm Design Techniques and Strategies
Demos: VP 27, VP 28
VIDEO
VIDEO
Mon 9-23 Quiz Ch 4 VP 22 & 23
4. Linked Lists
Demo: VP 29
VIDEO
VIDEO
VIDEO
VIDEO
Wed 9-25
Demos: VP 23, VP 31
VIDEO
VIDEO
VIDEO
Mon 9-30 Quiz Ch 5 C 106 & VP 12
5. Stacks and Queues
Demos: ED 102, more VP 26
VIDEO
VIDEO
VIDEO
Wed 10-2
Demos: C 101.5 (XOR), R 10, R 20
VIDEO
VIDEO
VIDEO
Mon 10-7 Quiz Ch 6 VP 24 & VP 25
6. Trees
Demo: VP 32
VIDEO
VIDEO
VIDEO
Wed 10-9
Demos: C 101.6 (XOR), VP 30
VIDEO
VIDEO
VIDEO
Mon 10-14 Quiz Ch 7 VP 26 & VP 27
7. Heaps and Priority Queues
Wed 10-16
7. Heaps and Priority Queues
Mon 10-21 Quiz Ch 8 VP 28
CLASS ONLINE ONLY
8. Hash Tables
Wed 10-23
CLASS ONLINE ONLY 8. Hash Tables
Mon 10-28 Quiz Ch 9 VP 29
9. Graphs and Algorithms
Wed 10-30
9. Graphs and Algorithms
Mon 11-4 Quiz Ch 10 VP 30
10. Searching
Wed 11-6
10. Searching
Mon 11-11
Holiday
Wed 11-13
TBA
Mon 11-18 Quiz Ch 11 VP 31
11. Sorting
Wed 11-20
11. Sorting
Mon 11-25 Quiz Ch 12 VP 32
12. Selection Algorithms
Wed 11-27
12. Selection Algorithms
Mon 12-2 Quiz Ch 13 VP 33
13. String Matching Algorithms
Wed 12-4
13. String Matching Algorithms
Mon 12-9
TBA
Wed 12-11
Last Class
Fri 12-13 through Fri 12-20
Final Exam available online throughout the week.
You can only take it once.
All Quizzes due 30 min. before class
Lecture Slides
1. Python Data Types and Structures ·
PDF ·
Keynote
2. Introduction to Algorithm Design ·
PDF ·
Keynote
3. Algorithm Design Techniques and Strategies ·
PDF ·
Keynote
4. Linked Lists ·
PDF ·
Keynote
5. Stacks and Queues ·
PDF ·
Keynote
6. Trees ·
PDF ·
Keynote
7. Heaps and Priority Queues ·
PDF ·
Keynote
8. Hash Tables
9. Graphs and Algorithms
10. Searching
11. Sorting
12. Selection Algorithms
13. String Matching Algorithms
Last Updated:
10-9-25 4:23 pm