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:
  1. .NET Core - C#: Free
  2. Visual Studio Code or JetBrains Rider: Free
  3. GitHub Desktop: Free
  4. 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: 

  1. Problem Solver: Apply a systematic approach to writing code to solve problems involving data structures.  
  2. Evaluator: Evaluate the performance of alternative solutions for code containing data structures using big O notation.  
  3. Reviewer: Predict the purpose and behavior of existing code containing data structures. 
  4. Tester: Discover defects using testing in code containing data structures. 
  5. Conversant: Articulate the answers to technical questions involving data structures.  
  6. 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