Skip to content

ccnycs/csc212

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gitter

Interactive slides

Binder

Contact/Office Hours

  • [email protected]
  • Tuesday 12:00-2:00, Thursday 12:00-2:00 (also available by appointment)
  • NAC 7/311

Grading

Points
5 Discussion/Piazza
15 Reading Self Assessments
40 Homework - Submitted via Github Classroom
30 Exams (10pts + 10pts + 10pts)
10 Final project

Schedule

Date Topics Readings Homework
1/28 The Phases of Software Development 1 https://classroom.github.com/a/bI_dHoR0
1/30-2/4 Abstract Data Types and C++ Classes 2 https://classroom.github.com/a/l-K9eG91
2/6-2/11 Container Classes 3
2/13 Pointers and Dynamic Arrays 4
2/18 * President's Day* (college closed)
2/20-2/27 Linked Lists 5
3/6 Software Development with Templates, Iterators, and the STL 6
3/11 Exam 1 1-5
3/13-3/18 Stacks 7
3/18-3/20 Queues 8
3/25=3/27 Recursive Thinking 9
4/1 -4/3 Trees 10
4/8 Exam 2 7-8
4/10 Tree Projects 11
4/15 Searching: Hashing 13
4/17 Sorting: Heap 14
4/19-4/28 spring recess
4/29 Exam 3 9 - 11
5/1-5/6 Graphs 15
5/8-5/13 Final Project Lab 13-15

The schedule is subject to change.

Required Material

  • Textbook: Data Structures & Other Objects Using C++, Michael Main and Walter Savitch (any edition)
  • Text Editor: any plaintext editor (I'll be mostly using VSCode in class)
  • Compiler: anything C++17 compatiable (I use g++, which can be installed via MinGW on Windows and XCode on OS/X)

Extra Credit

All the lectures and recitation activities and most of the in class coding samples are at https://github.com/ccnycs/csc212 You can earn extra credit by filing an issue or pull request. The issue/PR can flag/correct an error in the course material, suggest an addition to the course material, or otherwise contribute to the course material (I also like coding samples).

Policies

Email

Unless I tell you otherwise, email should only be used to set up an in person meeting, inform me about accommodations, or discuss confidential material like grades.

Coursework related communications, such as questions on the lecture or homework, should be done through piazza, which allows anonymous posting. Please email me about grades. If you are uncomfortable with this policy, please speak to me.

Homework

  • Homework must be submitted via github classroom.
  • Homework submitted through other methods without prior approval will not be graded.
  • Questions about the homework should be asked on piazza using the provided format.
  • Emailed questions and questions not in that format may be ignored.

Attendence

  • Missing any exam (unexcused absences) will result in an F for the course.
  • Missing the final project presentation will result in an F for the course.
  • Send an email at least two weeks in advance about excused absences or exam conflicts.

Accessibility

  • Have the accessibility center provide documentation for any accommodations ASAP
  • Notify me that they've left documentation in my mailbox/etc.

Plagiarism

  • First plagerized assignment - 0 for the assignment
  • Second plagerized assignment - 0 for all assignments
  • Third plagerized assignment - 0 for the course
  • Cheating on the midterms - automatic F in the course
  • Cheating on the final - automatic F in the course

In the case of multiple similar homework submissions, plagerism on assignments is determined based on timestamps-the person who submitted first is assumed to be the originator and anyone else is assumed to have plagerized. All students who submit similar exam answers are assumed to be cheating.

Plagiarism is copying solutions from pretty much anywhere, including friends, solution manuals, and random websites. Plagiarism can result in various academic repercussions as described in the CCNY integrity policy: http://www1.ccny.cuny.edu/current/integrity.cfm and any work suspected of being plagiarized will be dealt with per CCNY guidelines