CPSC 327 | Data Structures and Algorithms | Spring 2022 |
On this page:
Course Communication |
Assignments, handouts, and materials from class will be posted on the course web page, specifically the schedule page. You will need to check this page regularly to make sure you stay up-to-date. Some material may be posted on Canvas. There will always be a reference to the existence of this material on the schedule page so that you don't need to also check Canvas for updates. Email will be used for individual communications and for time-sensitive announcements, so you should also regularly check your HWS email account. |
---|---|
Classroom Conduct |
Learning is much more effective if you are engaged in the material. You should come to class prepared for the day's activities, and should be on task during class - please do not surf the web, text, play games, do assignments for other courses, etc during class time. Note taking on paper is encouraged as it avoids the distraction of electronic devices and the act of handwriting helps with retention of information. If you use a laptop or other device to take notes, you are encouraged to turn off notifications and close other applications to reduce the temptation of those distractions. Arriving late, leaving early, and coming and going during class is distracting to me and your fellow classmates. Please endeavor to arrive on time, and to take care of any necessary business before or after class so you can be present for the whole class period. If you know in advance that you will need to miss part or all of a class, please let me know. |
Mask Policy |
It is the policy of the Mathematics and Computer Science Department that, until further notice, masks must be worn in classes, labs, office hours, Math Intern hours, Teaching Fellow hours, and when present on the third floor of Lansing Hall. Please always wear your mask properly (over your mouth and nose). You are strongly encouraged to use a N95/KN95 mask if possible. |
Assignments and Evaluation |
Readings and Warmups: Readings are the first introduction for most material - it often takes more than one encounter to fully absorb something, and class time is more effective if it can be used to fill in the gaps and answer questions about things you have already started to think about. Warmups are geared to help you self-assess what concepts you understand from the reading and identify what needs further attention, and will be graded on effort rather than correctness. Readings and warmups are to be completed for the class period where they are listed on the schedule page. Homework: Hands-on practice is essential for learning and mastery, and homework problems provide an opportunity to tackle problems for yourself. To encourage timely engagement with the material and to support the process of skill-building, homeworks will typically be in the form of small chunks due frequently and can be revised and resubmitted for credit after they have been handed back. Most homework problems will involve written solutions, but there will also be some programming tasks. Exams: There will be four exams, including a final exam. All will be take-home exams, and will emphasize applying concepts rather than simple recall. The dates of the exams are given on the schedule page. More details about each exam will be announced prior to the exam. Grades: Final grades in this course will be computed as follows:
If you are concerned about your grade, you are strongly encouraged to come to office hours to get help with any material you may be struggling with and to take advantage of the revise and resubmit option for homework problems. Staying on top of things and seeking help as soon as possible when you need it is the best route to success. Extra Credit: There may be some opportunities to earn extra credit on homeworks and exams by going above and beyond the requirements of the assignment and/or tackling some harder problems. You are encouraged to take advantage of these opportunities to challenge yourself! |
Coding Standards |
Programs will be graded primarily on correctness, but you should follow common conventions for readability such as the CPSC 329 coding standards. As with a paper that is poorly formatted, a program which is difficult to follow due to poor programming style may be marked down even if it otherwise satisfies the requirements of the assignment. |
Attendance and Making Up Work |
You should attend every class - missing class means missing out on discussions and activities that take place in class. This puts a greater burden on you to catch up, and students who regularly miss class often end up not doing as well in the course. However, especially with the continued threat of COVID, it is understood that there may be extenuating circumstances which make attending every class difficult. If you cannot attend class, please let me know and make sure that you check the schedule page for new assignments and materials from class, complete any missed readings, warmups, or homework, and come to office hours if you have any questions or need help with any aspect of the material. This should be done promptly to avoid falling behind. If you miss more than three classes during the semester or if you miss several classes in a row, you are at greater risk for falling behind. In that case, please see me to discuss options for helping you stay on track. |
Late Policy, Extensions, and Rescheduling Exams |
There is a steady workload throughout the course, and foundational topics introduced earlier are used and built on later in the course. Both of these mean that it is important to stay on track; in addition, solutions may be posted and/or discussed in class, and this is delayed if work is handed in late. However, as with attendance, it is understood that there may sometimes be extenuating circumstances which make meeting every deadline difficult. As a result, some late work is accepted as specified below. However, a pattern of late or missing work is cause for concern, and you should see me to discuss options for staying on track if you hand in more than three assignments late.
If illness, a personal or family emergency, or another crisis occurs during an exam, please let me know as soon as possible. Any extension will generally be for only a short period. If you have an unavoidable conflict with the date(s) of an exam, please see me as soon as possible (before the exam date!) to discuss options for rescheduling. In both cases, you may not discuss the exam with anyone until you have turned it in. If illness, a personal or family emergency, or another crisis causes you to miss several classes in a row or otherwise presents an ongoing difficulty that adversely affects your work, please see me as soon as possible to discuss options for staying on track. No work will be accepted after the end of the Registrar-scheduled final exam time slot except in the case of an incomplete. |
Working Together and Academic Integrity |
The HWS Principle of Academic Integrity governs all of the work completed in this course. Specifically:
Even though discussion with others is allowed for homework, copying part or all of someone else's solution is expressly prohibited and it is never acceptable to be in possession of someone else's program or solution before you have handed in your own. This includes both computer files and paper copies. Decompiling or reverse-engineering someone else's code (including provided code) is also prohibited. All of this should be evident: using someone else's program or solution "as a guide" to completing your own is plagiarism. Unless otherwise prohibited (such as on exams), you can use other materials (such as reference books or websites) as technical references to learn about a particular topic (algorithm, data structure, technique, etc). However, looking for and/or copying a solution is not acceptable (even if you make some modifications) - the idea here is that someone else's solution is not helping you practice applying the material for yourself, and doesn't show your own level of mastery. If any case you are unsure about what is acceptable and what crosses the line when it comes to collaboration and use of outside resources, please ask! From the HWS Catalogue: (available online at http://www.hws.edu/catalogue/policies.aspx)
|
Being Successful |
Note taking on paper is encouraged as it avoids the distraction of electronic devices and the act of handwriting helps with retention of information. (Anything that appears on the projector screen - slides or code - will be posted on the schedule page soon after class, so you don't need to copy down all of that material in your notes.) If you do use a laptop or other device to take notes, you are encouraged to turn off notifications and close other applications to reduce the temptation of those distractions. There is a steady workload throughout the course, and foundational topics introduced earlier are used and built on later in the course. Review each day's material soon after class and start on homeworks early, and seek help promptly if you are stuck on something or want to discuss ideas. Letting a point of confusion slide often snowballs, and it is easy to find yourself falling behind. Your first resource if you need help with any aspect of the course material should be the instructor - ask questions during class and lab, stop by office hours, send email, or drop by or schedule a meeting. For more general help, such as with writing, study skills, or time management, you are encouraged to check out the Center for Teaching and Learning (CTL):
|
Accommodations |
If you are a student with a disability for which you may need accommodations and are new to our office, you should self-identify for services by scheduling a Welcome meeting (link to do so is on the top right of our webpage) with Disability Services at the Center for Teaching and Learning (CTL). Disability related accommodations and services will be provided when the registration and documentation process is complete. The guidelines for documenting disabilities can be found at the following website: http://www.hws.edu/academics/ctl/disability_services.aspx Returning students may request their accommodation letter by emailing the request to the CTL@hws.edu or by using the link on the top right of our webpage to schedule a meeting should you feel one is necessary. Please direct questions about this process or Disability Services at HWS to ctl@hws.edu or x3351. Jamie Slusser, Disability Services Administrator & Accommodation Specialist and Christen Davis, Associate Director of CTL for Disability Services are the main contact staff for Disability Services. |