Important Documents
- Syllabus
- For Semester Schedule, see page 6 of the syllabus.
Slide Decks
Part I (Exam 1 Material)
- Intro Material
- PA01 Overview Slides
- Pointers and C-Strings
- Dynamic Memory Allocation
- Memory and Code
- Includes some Operator Overloading material as well
- Linear Data Structures
- Polymorphism in C++ (In Class Written Slides)
- DSVector (In Class Written Slides)
- Exam 1 Information (will be on Monday Feb 21)
- Exam 1 will cover only the material above.
- It will consist of 3 sections:
- Purely Objective questions (M/C or T/F type)
- Short Answer questions… examples:
- pointer expression decoding
- write a couple lines of code to do something specific
- and other similar short answer questions
- Long form / Coding questions… examples:
- write a function to do ___.
- add a member function to a given class to do ___.
- overload a specific operator
- memory diagram
- and other similar types of questions
- I may ask you some questions about what Polymorphism means, but I’m not going to ask you to write code using polymorphism.
- Know how to do memory diagrams!
- Know how to decode pointer expressions!
- You can bring a cheat sheet to the exam!
- 8.5″ x 5.5″ sheet of paper with writing on one side only (no mobius strips)
- needs to be in your own hand writing (nothing typed). If you want to write on your iPad or other tablet device, that’s OK. But you need to bring a printed version to class for the exam, and it still must be in handwriting.
- Exam 1 Review In Class
Part II (Exam 2 Material)
- Introduction to Analysis (In Class Written Slides)
- Sorting Time
- Quicksort
- PA04 Kickoff Slides
- Stacks and Queues
- Exam 2 Review / Slides
Part III
- Introduction to Trees
- Balanced Binary Search Trees
- AVL Tree Concepts – Videos
- AVL Tree Implementation
Final Project – Search Engine
- Handout
- Slides
- Github Assignment Repo Link
- Project Kick Off Video
- Timing Demo Handout
- Timing Demo Sign Up Sheet
- Sample Datasets for Timing Demo
- Code Examples
- Final Demo Sign Up Sheet
Programming Assignments
- PA 00 — Welcome to CS 2341 Week 1 Lab
- PA 01 — Don’t Be Sentimental!
- PA 02 — AutoIndexer
- Project Handout
- Github Classroom Assignment Link
- Corrected Test Book Input File > here <.
- Download the file from the link above and save it into the data folder in your project repo. It is OK to overwrite the one that is there.
- To get it copied into your cmake-build-debug data folder, you’ll need to choose “Reload CMake Project” from the file menu. If that option isn’t available on your File menu, ask a TA to help you find. it.
- Alternatively, just copy the file into the data folder of the project repo folder AND into the cmake-build-debu/data folder of your project repo.
- Questions? just DM me or a TA on Slack.
- PA 03 – Mystery Sorter
- PA 04 – Flight Planner
Homework Assignments
- HW 00 – Getting Started – Due Jan 24, 2022 @ 6am uploaded to Canvas.
- HW 01 – Due Feb 4 @ 6am PDF uploaded to Canvas
- HW 02 – Due Feb 11 @ 6am PDF uploaded to Canvas
- HW 03 – Due Feb 18 @ 6am PDF or image uploaded to Canvas
Helpful Materials
Name | Link |
1. Development Environment Setup | Click here |
2. Installing and Running Catch for TDD | Click here |
3. Lyle Genuse Server Connection and File Transfer (Macs Only) | Click here |
4. WSL2 Guide (Windows Only) | Click here |
5. Installing Valgrind on WSL | Click here |
6. Removing Files from Git Commits | Click here |