Term and Credits
Spring 2022-2023
3 Credits
Room and Time
Section 001 - TR 9:30AM-10:50AM Prof. Boady [3675 Market Street 1052]
Section 002 - TR 11:00AM-12:20AM Prof. Boady [3675 Market Street 1053]
Instructor
Mark Boady
Electronic Mail Address:
mwb33@drexel.edu
Office: 3675 Market Street Room 1063 (near snack machine)
Extention: 215-895-2347
Office Hours:
Wednesday 10:00AM-12:00PM
Teaching Assistant(s)
Zohair Hasan
Electronic Mail Address: zh393@drexel.edu
Office:
Online Only. Zoom link will be posted to Discord
Office Hours: Monday 8:00PM-10:00PM and Wednesday 8:00AM-10:00PM
Course Description
Data structures form the basics for the programmer's toolbox. You will become familiar with the basic common data structures, and learn to modify them or create your own. Further, the notion of data abstraction is important from several aspects. You will start down the road of separating interface from implementation, to viewing a problem simply in terms of functional requirements and dependencies (or lack of). On the flip side, we will explore various issues involved in implementing a given interface.
Course Objective and Goals
Topics
Audience and Purpose within Plan of Study
This is required course for CS BS students and CS Minor Students. It is generally taken sophomore year.
Prerequisites
CS265
What Students Should Know Prior to this Course
What Students will be able to do upon Successfully Completing this Course: Statement of Expected Learning
Textbook
The Algorithm Design Manual (3rd ed.)
Author: Steven Skiena
Published: October 6, 2020
ISBN-10: 3030542556
ISBN-13: 978-3030542559
Buy from Amazon
Book Website with Additional Resources
Grading and Policies
Final grades will be determined by your total points weighted according to this distribution. Grades may be curved but are generally computed via the formula below. It may be modified at the instructor's sole discretion, but letter grades will generally not be lower than those shown here.
Late Policy
Academic Honesty Policy
The CCI Academic Honesty policy is in effect for this course. Please see the policy at http://drexel.edu/cci/resources/current-students/undergraduate/policies/cs-academic-integrity/.
Academic Honesty Violations will be reported to the University. Punishment will be determined by the severity of the incident. Punishments include, but are not limited to,
Reflections
Homeworks
Assessments
Extra Credit
Slack
University Policies
In addition to the course policies listed on this syllabus, course assignments or course website, the following University policies are in effect:
CCI's Commitment to Diversity, Equity, and Inclusion (DEI)
The College of Computing & Informatics commits to creating a positive and safe learning environment for everyone - instructors, professional staff, and students - both inside and outside of the classroom. We embrace the diversity of thoughts, perspectives, and experiences that each community member brings, and we honor everyone's identity (including, but not limited to, race, ethnicity, age, gender, socioeconomic status, sexuality, religion, veteran status, and disability). We encourage each community member to share information regarding pronouns, religious and cultural holidays, accommodations, and any other information that will assist instructors in fostering a supportive and inclusive community environment. For more information about CCI's commitment to DEI, visit Diversity, Equity & Inclusion Council | Drexel CCI.
Appropriate Use of Course Materials
It is important to recognize that some or all of the course materials provided to you are the intellectual property of Drexel University, the course instructor, or others. Use of this intellectual property is governed by Drexel University policies, including the IT-1 policy found at: https://drexel.edu/it/about/policies/policies/01-Acceptable-Use/ Briefly, this policy states that all course materials including recordings provided by the given prior written approval by the University. Doing so may be considered a breach of this policy and will be investigated and addressed as possible academic dishonesty, among other potential violations. Improper use of such materials may also constitute a violation of the University's Code of Conduct found at: https://drexel.edu/cpo/policies/cpo-1/ and will be investigated as such.
Recording of Class Activities:
In general, students and others should not record course interactions and course activities in lecture, lab, studio or recitation.
Students who have an approved accommodation from the Office of Disability Resources to record online lectures and discussions for note taking purposes should inform their course instructor(s) of their approved accommodation in advance. The recording of lectures and discussions may only be carried out by the students enrolled in the class who have an approved accommodation from Disability Resources with their instructors' prior knowledge and consent. Students with approved accommodations may be asked to turn off their recorder if confidential or personal information is presented.
If a student has any comments, concerns, or questions about provided class materials and/ or recording, talk to your course instructor first. If this does not resolve the issue, you can also reach out to the Department Head, and use the process described for a grade appeal to move your concern forward. The process described for grade appeals can be found at:
https://drexel.edu/provost/policies/grade-appeals/
Tentative Course Schedule
Please see the appropriate assignment webpages for a detailed description of course deliverables.
Week | Topic | Assignments | |
1 (April 3, 2023) |
Lecture 1: Searching Lecture 2: Analysis of Algorithms | Reflection 01 Due Friday 4/7 at 11:59PM | |
2 (April 10, 2023) |
Lecture 3: Bubble and Insertion Sorts Lecture 4: Merge Sort and Quick Sort |
Homework 1 Due Wednesday 4/12 at 11:59PM Reflection 02 Due Friday 4/14 at 11:59PM |
|
3 (April 17, 2023) |
Lecture 5: Stacks Lecture 6: Queues |
Homework 2 Due Wednesday 4/19 at 11:59PM Reflection 03 Due Friday 4/21 at 11:59PM |
|
4 (April 24, 2023) |
Lecture 7: Open Hash Table Lecture 8: Closed Hash Table |
Homework 3 Due Wednesday 4/26 at 11:59PM Reflection 04 Due Friday 4/28 at 11:59PM |
|
5 (May 1, 2023) |
Lecture 9: Binary Search Trees Lecture 10: AVL Trees |
Homework 4 Due Wednesday 5/3 at 11:59PM Reflection 05 Due Friday 5/5 at 11:59PM |
|
6 (May 8, 2023) |
Lecture 11: Heaps Lecture 12: Class Cancelled |
Midterm Assessment - Thursday 5/11 at 11:59PM Reflection 06 Due Friday 5/12 at 11:59PM |
|
7 (May 15, 2023) |
Lecture 13: Huffman Encoding Lecture 14: Intro to Graphs (Breadth First Search) |
Homework 5 Due Wednesday 5/17 at 11:59PM Reflection 07 Due Friday 5/19 at 11:59PM |
|
8 (May 22, 2023) |
Lecture 15: Depth First Search Lecture 16: Dijkstra's Algorithm and Bellman-Ford |
Homework 6 Due Wednesday 5/24 at 11:59PM Reflection 08 Due Friday 5/26 at 11:59PM |
|
9 (May 29, 2023) |
Lecture 17: Prim's Algorithm Lecture 18: Kruskal's Algorithm |
Homework 7 Due Wednesday 5/31 at 11:59PM Reflection 09 Due Friday 6/2 at 11:59PM |
|
10 (June 5, 2023) |
Lecture 19: The Master Theorem Lecture 20: Something Cool |
Pick one of HW8, HW9, HW10: Due Wednesday 6/7 at 11:59PM Reflection 10 Due Friday 6/9 at 11:59PM |
|
11 (June 12, 2023) |
Final Assessment - Due Wednesday June 14, 2023 at 11:59PM Extra Credit - Due Wednesday June 14, 2023 at 11:59PM Optional: You may complete whatever homeworks (HW8, HW9, HW10) you didn't select for last week by Friday June 16 at 11:59PM for no late penalty. Your top 8 HW submissions are counted. |