Course Syllabus
Overview
This course will introduce students to the common programming data structures with an emphasis on how to use them to solve practical, real-world problems. This is a 2 credit course.
Requirements
Prerequisites
CSE 210: Programming with Classes
Required Resources
There is no required textbook for this course. All reading is linked within I-Learn to content pages in GitHub. You will also need access to the following:- .NET Core - C#: Free
- Visual Studio Code or JetBrains Rider: Free
- GitHub Desktop: Free
- Slack: Free. Use with your BYU-I account.
Structure
Course Outcomes
Each CSE212 student will be assessed on the following engineering characteristics, which students will have the opportunity to develop during the semester:
- Problem Solver: Apply a systematic approach to writing code to solve problems involving data structures.
- Evaluator: Evaluate the performance of alternative solutions for code containing data structures using big O notation.
- Reviewer: Predict the purpose and behavior of existing code containing data structures.
- Tester: Discover defects using testing in code containing data structures.
- Conversant: Articulate the answers to technical questions involving data structures.
- Self-Reliant: Solve problems using data structures independently.
Major Assignments
The table below is meant to help you see the relevance of each major assignment as it pertains to the course outcomes (CO).
Major Assignment | Description | CO# |
---|---|---|
W01—Prove | Problem Solving Strategies and Dynamic Arrays | 1 |
W02—Prove | Evaluating Performance of Alternative Solutions and Big O Notation | 2 |
W03—Prove | Understanding Code Using Reviews and Stacks | 3 |
W04—Prove | Finding Defects Using Tests and Queues | 4 |
W05—Prove | Articulating Answers and Sets | 5 |
W06—Prove | Maps | 6 |
W07—Prove | Linked Lists | 6 |
W08—Prove | Recursion | 6 |
W09—Prove | Trees | 6 |
W14—Prove | Final Project—Data Structure Tutorial | 1, 2, 3, 4, 5, 6 |
Weekly Patterns
The table below displays typical weekly activities, due dates, and activity descriptions.
Due Date* | Learning Model | Activity Title | Description |
---|---|---|---|
Beginning of Week | Prepare | Prepare | Spend one hour completing the assigned reading. |
Midweek | Teach | Teach | Spend one hour completing either a group practice (Weeks 01–05) or a group collaboration (Weeks 06–09) with your assigned study group. |
End of Week | Prove | Prove |
Spend three hours completing an individual assignment (Weeks 01–09). During the end of the semester (Weeks 10–14), you will be working on an individual final project with weekly deliveries. There will be no group activities. |
*Set your time zone within user preferences so the dates and times for course activities will display correctly for your time zone.
Learning Model
This course is divided into the following three phases: Prepare, Teach, and Prove.
Phase | PREPARE | TEACH | PROVE | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Lesson | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
Purpose | You will learn programming skills and techniques and apply them to data structures. You will complete practice problems with your study group and discuss the solutions together. Your individual assignment will be similar to the practice problems. | You will learn complex data structures and rely on your skills discovered in the PREPARE phase. You will have a set of problems to solve each week individually. You will meet with your study group to collaborate on these problems (without sharing solutions). | You will demonstrate what you learned in the PREPARE and TEACH phases by completing a final individual project. Class time will be given to work on your final project. |
Expectations
Feedback
You can expect to receive grades and feedback for all assignments within 7 days of the due date.
Workload
You will be expected to complete the following every week during the Prepare and Teach phases of the course (Weeks 01–09):
- 1 hour — Assigned reading
- 1 hour — Review and discussion with teacher and students on Slack
- 1 hour — Group activity with web conferencing tools like Zoom
- 3 hours — Individual assignment
During the Prove phase of the course (Weeks 10–14), you will spend all 6 hours a week (including class time for on-campus students) working on your final project.
Group Work
Group work is intended to allow you to teach one another and learn the material better. You will be assigned a study group that will be used during the Prepare and Teach phases of the course (Weeks 01–09). Your assigned study group will not be used during the Prove phase of the course (Weeks 10–14). Weekly group activities will include the following:
- Prepare Phase (Weeks 01–05): You will complete a group practice together, including problems similar to your individual prove assignment for the week. Answers are included with the group practice.
- Teach Phase (Weeks 06–09): You will collaborate together (without sharing solutions) on your strategies for solving the individual prove assignment for the week.
Late Work
You should complete your work on time as a sign of professionalism and respect. However, your instructor has the discretion to accept late work or extend due dates as appropriate.
Extra Credit
There are extra credit opportunities with the individual prove assignments during the Teach phase (Weeks 06–09). Refer to the instructions in those assignments for additional details.
Grade Weights
Activity | Grade Weight |
---|---|
Group Activities | 20% |
Individual Assignments | 40% |
Final Project | 40% |
Grading Scale
Letter Grade | Percent |
---|---|
A | 100% – 93% |
A- | 92% – 90% |
B+ | 89% – 87% |
B | 86% – 83% |
B- | 82% – 80% |
C+ | 79% – 77% |
C | 76% – 73% |
C- | 72% – 70% |
D+ | 69% – 67% |
D | 66% – 63% |
D- | 62% – 60% |
F | 59% and lower |
University Policies
Go to the Student Resources module to review the university policies regarding honesty, disability services, online etiquette, communication expectations, etc.
Students with Disabilities
Brigham Young University-Idaho is committed to providing a working and learning atmosphere that accommodates qualified persons with disabilities. If you have a disability and require accommodations, please contact the Accessibility Services Office at (208) 496-9210 or visit their website and follow the Steps for Receiving Accommodations. Reasonable academic accommodations are reviewed for all students who have qualified documented disabilities. Services are coordinated with students and instructors by the Accessibility Services Office.
This course requires synchronous meetings. If you are currently registered with the Accessibility Services Office and need an interpreter or transcriber for these meetings, please contact the deaf and hard of hearing coordinator at (208) 496-9219.
Course Summary:
Date | Details | Due |
---|---|---|