Schedule
Weekly Schedule
No matching items
Additional Details
High-Level Overview
- Module One:
- Topic: Algorithm Analysis Foundations
- Weeks: One through six
- Chapters: One through five in A First Course on Data Structures in Python
- Module Two:
- Topic: Algorithmic Building Blocks
- Weeks: Seven through eleven
- Chapters: Six through fourteen in A First Course on Data Structures in Python
- Module Three:
- Topic: Advanced Data Structures
- Weeks: Twelve through sixteen
- Chapters: Fifteen through twenty-one in A First Course on Data Structures in Python
Schedule Details
Week-by-Week Highlights
- Basics:
- Start Semester: Week One
- Spring Break: Week Eight
- Refresh Break: Week Thirteen
- End Semester: Week Sixteen
- Examinations:
- Midterm Exam One: Week Seven
- Midterm Exam Two: Week Twelve
- Final Exam: Week Sixteen
- Skill-Checks:
- Skill-Check One: Week Two
- Skill-Check Two: Week Four
- Skill-Check Three: Week Ten
- Skill-Check Four: Week Fifteen
- Algorithm All-Hands Projects:
- Project One: Weeks One through Six
- Project Two: Weeks Seven through Eleven
- Project Three: Weeks Twelve through Sixteen
Important Dates
- Midterm Executable Examination One
- Date: February 28, 2025
- Time: 2:30 – 4:00 PM
- Location: Alden 109
- Midterm Executable Examination Two
- Date: April 4, 2025
- Time: 2:30 – 4:00 PM
- Location: Alden 109
- Final Executable Examination
- Examination Code: D
- Date: May 2, 2025
- Time: 9:00 AM – 12:00 Noon
- Location: Alden 109
Weekly Cadence
Tuesday and Thursday: Algorithm Analysis Exposition - Introduction to scientific, technical, and engineering topics:
- Data structures and algorithms
- Performance evaluation techniques
- Software engineering best practices
- Prepare for these projects:
- Algorithm engineering project
- Algorithm all-hands project
- Prepare for these assessments:
- Midterm examination
- Final examination
- Skill-checks
- Introduction to scientific, technical, and engineering topics:
Thursday and Friday: Algorithm All-Hands Projects - Cadence: Two weeks devoted to phase one, two weeks for phase two, and finally one week for phase three. Complete these tasks during the second halves of Thursday’s classroom session and Friday’s laboratory session.
Phase One: Building on the course’s prior scientific and engineering content, prepare a research question and design an experiment to answer it - Goal: Scientific study in algorithmology
- Propose research question connect to current module
- Specify evaluation metrics used to answer research question
- Design an experiment to measure evaluation metrics
- Assign tasks for the remaining phases of the project
- Goal: Scientific study in algorithmology
Phase Two: Leveraging prior work, implement all needed software tools and apply them when conducting the experiment designed in the prior phase - Goal: Engineering effort in algorithmology
- Identify useful function(s) for refinement
- Explain steps for improving the function(s)
- Create a pull request and follow it through review
- Give an overview of the completed function(s)
- Give a demonstration of a command-line tool using the function(s)
- Goal: Engineering effort in algorithmology
Phase Three: Leveraging prior work, answer the research question - Goal: Effective communication in algorithmology
- Analyze and interpret the results
- Create a web-based report to present and discuss the results
- Collaboratively publish the report to the course web site
- Present the report and participate in a discussion session
- Provide thorough answer(s) to the chosen research question
- Goal: Effective communication in algorithmology
Friday: Algorithm Engineering Project Week One: Design, implement, test, and document software tools - Data structure(s) and algorithm(s)
- Benchmark evaluation framework
- Data analysis and visualization tools
Week Two: Design, conduct, and report on an experiment - Demonstrate implementation of completed system
- Document the experimental design
- Pose research question(s)
- Define evaluation metrics
- Conduct the experiment
- Analyze and interpret the results
- Draw conclusions and make recommendations
Friday: Skill-Checks and Executable Examinations Skill-Check: Completed during the last 45-minutes of the laboratory session Examination: Completed during the entire laboratory session