CS1332 Data Structures & Algorithms

Download CS1332 Data Structures & Algorithms

Preview text

6/4/20, 1)59 PM
CS1332 Data Structures & Algorithms
Dr. Mary Hudachek-Buswell Email: [email protected] (use Outlook gatech email, NOT canvas email) Office: BlueJeans Office Hours: Make appointments via gatech email for Mondays 10 am - 12 pm. (I do not hold office hours the first or last week of the semester.)
Course Registration Details: Effective Spring 2020, registration requires a change where students are to register for both lecture and recitation separately. CS1332, Data Structures and Algorithms, will consist of two separate courses, CS1332 (3.0 credits) and CS1332R (0.0 credits). You are to register for one lecture section and one recitation section associated with lecture (for example, CS 1332 A lecture and CS 1332 R A01-A06 recitation). Credit and billing is done based on lecture while recitations are non-billable and do not count towards full-time hours.
All Recitation videos are available to all students.
Teaching Assistants
TA List and Office hours are on the "TA Info / Help" page. Mitchell Gacuzana – Head TA: [email protected] Keely Culbertson – Senior TA: [email protected] Ivan Leung – Senior TA: [email protected] Isaac Tomblin – Senior TA: [email protected]
TA / Office Hour Information
Where to Find your TA: - Help Desk or TA Office Hours will be held on BlueJeans, check Piazza for links to BlueJeans or schedule with a TA - Schedule of Help Desk hours will be posted on Canvas. You may see ANY CS1332 TA for help.
Course Information
Final Exam: Final Exam is July 24, 2020, testing window is 12:01 am to 11:59 pm (24 hours) GT Final Exam Matrix Full 202005
Recitations: All recitations take place on Wednesday from 3:30 to 4:45 pm in Bluejeans Events. We will post the link in announcements for each Bluejeans Event.


Page 1 of 9

6/4/20, 1)59 PM
Link to Bluejeans Event for recitations: https://primetime.bluejeans.com/a2m/live-event/cwkqhjws
Prerequisite: You must have a C or better in CS1331 to remain in this course. If you do not have this prerequisite you will be dropped.
Recommended Textbook: Data Structures and Algorithms in Java. 6/edition by Goodrich, Tamassia, and Goldwasser 2014 ISBN: 9781118771334 (Kindle edition is fine. The 5th edition is probably also fine.)
Course Website/Resources/Communication:
Canvas is the course management tool for the semester, http://canvas.gatech.edu/ (Links to an external site.). The CS1332 Visualization Tool can be found at: csvistool.com. Gatech email is the official communication tool between professors and students for this course. You must check for messages on a regular basis. All communication with your professor should be through the gatech email account. Students are responsible for any and all announcements made on Canvas. Java 8, Checkstyle 8.12 or 8.14, JUnit 4.12 IDE is your choice, the TAs officially endorse IntelliJ as an IDE (see Piazza for a guide to setting up IntelliJ). CS1332 Videos & Slides, the CS1332 Visualization Tool, the Saikrishna slides and Reality Checks have been created for student use in this course. They are considered intellectual property, and are not to be posted or shared anywhere except within the confines of the course. Exams are taken using Proctortrack. Students are responsible for installing and using Proctortrack correctly. Any student who does NOT use Proctortrack, during their exams, will receive a zero on the exams. Students are solely responsible for having working laptops and web cameras during all exams.
Party AVL

Course Objectives:
Develop more skills in individual Java programming Work with common data structures used in software development by coding their low-level implementation
Arrays, ArrayLists, LinkedLists (Singular, Doubly, Circular) Stacks, Queues, Deques, Priority Queues Various Trees: Binary, Binary Search, AVL, Splay, Heaps, 2-4 Trees, etc… Hash Maps/Tables; External Chaining and Probing Graphs and their algorithms Become familiar with common algorithms on these data structures Sorting Algorithms: Bubble, Insertion, Selection, Cocktail Shaker, Merge, Quick, Radix etc... Pattern Matching Algorithms: Brute force, Boyer-Moore, KMP, Rabin-Karp


Page 2 of 9

6/4/20, 1)59 PM
Graph Algorithms: Dijkstra’s Shortest Path and multiple MSTs Dynamic Programming Algorithms Work with Big-O notation, allowing good choices about the appropriate data structure and algorithm to use for a particular programming problem Improve one's ability to test and debug programs
Learning Accommodations:
Classroom accommodations for students with documented disabilities will be made, if necessary. These accommodations must be arranged in advance and in accordance with the Office of Disability Services http://disabilityservices.gatech.edu
Non-Discrimination: The Institute does not discriminate against individuals on the basis of race, color, religion, sex, national origin, age, disability, sexual orientation, gender identity, or veteran status in the administration of admissions policies, educational policies, employment policies, or any other Institute governed programs and activities. The Instituteʼs equal opportunity and nondiscrimination policy applies to every member of the Institute community. For more details see http://www.policylibrary.gatech.edu/policy-nondiscriminationandaffirmative-action
Conduct Policy: It is expected that everyone will follow the Student-Faculty Expectations document, and the Student Code of Conduct. The professor expects a positive, respectful, and engaged academic environment inside the classroom, outside the classroom, in all electronic communications, on all file submissions, and on any document submitted throughout the duration of the course. No inappropriate language is to be used, and any assignment, deemed by the professor, to contain inappropriate or offensive language will get a zero. You are to use professionalism in your work. Violations of this conduct policy will be turned over to the Office of Student Integrity for misconduct.
Party Graphs

Assessments and Grade Thresholds:
There will be homeworks every week and exams are roughly 3 or 4 weeks apart. Expect for a homework to be due during the last full week of class of the semester. There are NO “dropped” exams or homeworks. There are NO "exam retakes". There is NO “extra credit” ever.


Page 3 of 9

6/4/20, 1)59 PM

There is NO curve in this course. Letter grade cutoffs use a straight scale. The final exam is cumulative and mandatory. In addition to having a passing average, you must have a passing exam average (all exams and the final are averaged together, weighted) to pass this class. Passing is hereby defined as 70% or higher. There is a Participation grade for this course. Students will have multiple "Reality Checks" on topics every week that will be turned in during modules. Feedback will be given to students who complete the work.

Type Assessment Participation Homework/Programming Exam 1 Exam 2 Final Exam Total

Points | Grade Scale Percentage















less than 60.0%


Assignment Deadlines/Exceptions:

There are no makeups for missed exams or homeworks or reality checks. Institute approved absences are rare and do qualify for an exception. If you will be observing religious holidays during the semester, then inform your professor the first week of the semester in writing, especially of any conflicts with exam dates. Please minimize absences to attend the Georgia Tech All Majors Career Fair. For any absences due to interviews, you must provide documentation from the employer on letterhead with the exact interview/travel dates. In order to be excused for attendance at a career fair, you must send an email to the professor prior to the event with the exact day and time. An excuse for career fair attendance will only cover Reality Checks, not homework. If you are absent due to official Georgia Tech business, please forward the electronic official documentation to the professor in an email stating the dates you will be absent. It will be noted in the professor's spreadsheet offline. Events such as vacations, weddings, graduations, errands, work conflicts, sleeping through your alarm, alarm malfunction, forgetting to submit, forgetting the date or time of an exam, or not being aware of the assignment are all NOT valid excuses. If you miss any assignment without a valid excuse, then you receive a 0. Any request for exceptions to the no-makeup policy must be made in advance of the assessment, unless it is physically impossible. Documented incapacitating illness, death in the family, judicial procedures, military service, or official school functions are considered valid excuses. Be aware that documentation must be provided on letterhead with the signature of a physician, supervisor, or other appropriate official. Additionally, the excuse must be encompass the date(s) of any assignment for which you are requesting an exception. All situations will be referred to the Dean of Students Office for verification. Therefore, contact the Dean of Students with your documentation, and they will inform you of the proper procedures.


Page 4 of 9

6/4/20, 1)59 PM
https://studentlife.gatech.edu/ The Dean of Students Office, then contacts your professor directly with any accommodations to be provided. The final decision regarding any exception is made solely at the discretion of your professor. We will only offer a single makeup day for each exam. We write a brand new exam for makeups so that the integrity of the exams remains intact. The exam makeup day takes place one week later on a Friday. The makeup exam is an online exam, and is administered as such. If you have an excused absence, then you may take the makeup exam at this time. If you miss the makeup day without a valid excuse, then you receive a 0. If you miss the makeup day and have a valid excuse, then the professor will decide what will be done on a case by case basis. If you take the exam, we will assume you are well enough for your performance to accurately reflect your knowledge and you will NOT be allowed to retake the exam.
Grade Disputes/Regrades:
We will be using Gradescope, Proctortrack and Canvas this term, which allows us to provide fast and accurate feedback on your work. Exam grades will be returned through Gradescope and then posted to Canvas. As soon as grades are posted, you will be notified immediately so that you can log in and see your feedback. If you feel that a regrade request is justified for a homework assignment or exam, discuss the dispute with any TA during help desk hours. If the TA approves the regrade, they will give you instructions on how to submit your regrade request. Regrade request results will be returned within 1 week of the assignment's regrade request deadline. Grade disputes are rare, but if you find yourself not clear about why points were lost, we have a strict policy and procedure to follow. Disputes of grading on assignments, exams, etc. must be discussed within 5 days of the assignment being returned. Any exceptions to this timeline will be announced before grades are released. All regrade requests go through the Head TA. Should you find yourself having an issue with a grade, contact the Head TA. No regrade requests submitted after the deadline or without approval from a TA will be considered. If the Head TA is unable to resolve the issue, contact your instructor. Every regrade request must have a detailed reason why a regrade is needed. “I'd like to get more points" is not a valid reason and will result in the request being promptly declined. Furthermore, any regrade request that is not respectful and professional will be declined. Be aware that any regrade request may result in your entire exam or homework being regraded. Your grade may go up or down. It is your responsibility to ensure that all the grades in Canvas are correct before finals week. After that, the only grade discussion will be about the grading of your final exam. Any discussion of your grades after the final exam must be done in person, and cannot occur until the 3rd week of the next semester you are enrolled. Final exams are not released or returned to students. They remain on file for the college.
Party AVL

Academic Integrity:
Georgia Tech aims to cultivate a community based on trust, academic integrity, and honor. Students are expected to act according to the highest ethical standards. Every student is expected to read, understand and


Page 5 of 9

6/4/20, 1)59 PM
abide by the Georgia Tech Academic Honor Code: http://osi.gatech.edu/content/honor-code
When working on homework assignments, you may not directly copy code from any source (other than your own past submissions). You are welcome to collaborate with peers and consult external resources, but you must personally write all of the code you submit. You must list, at the top of each file in your submission, every student with whom you collaborated and every resource you consulted while completing the assignment.
You may NOT directly share any files containing assignment code with other students or post your code publicly online. If you wish to store your code online in a personal private repository, you can use GitHub Enterprise (https://github.gatech.edu/) to do this for free.
The only code you may share is JUnit test code on a pinned post on the official course Piazza. Use JUnits from other students at your own risk; we do not endorse them. See each assignment’s PDF for more details. If you share JUnits, they must be shared on the site specified in the Piazza post, and not anywhere else (including a personal GitHub account).
You are prohibited from posting course materials including quizzes, exams, and projects on the Internet (including public Github). If any student copies your work that you had posted online, you will be considered as having committed plagiarism as well. Additionally, TAs will be monitoring "collaboration/help" sites (Chegg, groups, etc...) for exam and homework violations.
Violators of the collaboration policy for this course will be turned into the Office of Student Integrity.
Homework Submission & Responsibility: All course information and resources can be found in Canvas http://canvas.gatech.edu/ to include: Syllabus, Videos, Slides, Assignments, Submissions, Announcements, Grades & Feedback, Resources, ….
Homework files will be available in the Canvas Module titled Homework. Homework submissions will be done through Gradescope. Turning in homework properly on Gradescope is solely your responsibility. All homework for all sections will have a single due date. Homework due dates may differ depending on the length of the assignment. Homework is usually due on a Monday at 11:55:00 pm EST for full credit consideration. There is a grace period until 2:00:00 am EST the following day, but your submission will be marked as late by Gradescope . If marked late, you will be penalized 25 percentage points for the assignment. Do not ask for an exception to the late policy unless you have a valid excuse accompanied by documentation that has been submitted to the Dean of Students office. Gradescope is NOT forgiving about due dates and times. Imagine a train taking off whether or not you are fully onboard. It has no love. Gradescope always overrides previous submissions. If you are late submitting, Gradescope will override your earlier submission. We will NOT grade an earlier submission (or any part of an earlier submission), if you are late or under any other circumstance. We ONLY grade the latest submission. Homework submissions that do not follow the conventions listed in the homework information PDFs of the expected deliverables (e.g. names, types, and number of files) will be treated as non-compiling and will earn a zero. If an assignment requires the submission of multiple files, all necessary deliverable files must be included in your most recent submission to be considered.


Page 6 of 9

6/4/20, 1)59 PM
Turning in homework properly on Gradescope is solely your responsibility.
Gradescope submissions: It is completely within your power to make sure your homework is submitted properly. If you are not conscientious about your submission, then there is a high likelihood you will trip up and not turn in one or more assignments correctly.
You are to upload the .java files and any other files required by the assignment. ( .class files will not be graded and will be given a 0. ) To receive credit, the file(s) must compile in Java 8 using only JUnit 4.12 and the Java standard libraries. After submitting your file(s) for a Homework assignment, reload Gradescope going to the Assignments list within the CS1332 Gradescope . Look at the assignment in question. You should now see that it says it has been submitted with the date and time. Download a fresh copy of the files from Gradescope , saving to a new folder, and then recompile and run that code. Following steps 1, and 2 is truly the only way to confirm what you have turned in. Failure to upload the proper file(s) for a homework will result in a zero for the assignment. Programs that do not compile or run also receive no credit.
Party AVL

Exam Instructions:
Signing and/or taking this exam signifies you are aware of and in accordance with the Academic Honor Code of Georgia Tech and the Georgia Tech Code of Conduct. All regular semester exams are 50 minutes long, except the final exam. You will be given a 24 hour window, 12:01 am to 11:59 pm, on the exam day in which to take your exam. Canvas will automatically close the exam when time is up. Be sure to record your answers. Allow a full 60 minutes for the 50 minute for the exam and instructions. You must begin your exam before 11:00 pm in order to finish on time. All exams are administered via Canvas with Proctortrack in place and proctoring during the exam. It is the student's responsibility to have Proctortrack installed and all testing parameters in place. You are responsible for a working a machine and internet connection in order to complete the exam. You must have your BuzzCard or another form of identification on the table in front of you during the exam. It is your responsibility to have your ID prior to beginning the exam. You are allowed 2 single, white, unmarked sheets of paper for scratch work. You must show both sheets, front and back, to the camera to verify they are unmarked. This is to be done during the verification scan phase prior to the start of the exam. Your entire desk area must be clear of all other objects other the 2 sheets of paper, pencil/pen and keyboard. You are NOT allowed to leave the exam desk or room and return. If you leave the desk or room for any reason, then your exam is over. You are to ensure there are NO interruptions during your exam. You are to take the exam in a private testing environment. NO television, radios, or other media is to be on during the exam. This is a testing environment and


Page 7 of 9

6/4/20, 1)59 PM
you will have to take scans of the surrounding area prior to having your exam released. Hats, hoodies, caps, and/or scarves of any kind must NOT cover your ears. Your ears must be visible at all times during the exam. Ball caps and hats with bills must be worn backwards, and may not overshadow your eyes. No sunglasses are allowed. The following is PROHIBITED during the exam: Notes, books, calculators, phones, printers, scratch pads, Google glasses, sunglasses, smart watches, earbuds, headphones, etc... Basically, no internet communication devices. Moreover, you must be dressed in appropriate attire as you would if you are taking the exam in person with the professor. Additionally, you are PROHIBITED from using online/digital resources, other computer software, copy/paste functions, print screen functions, scan functions, multiple monitors or screen calculator. The use of any of PROHIBITED items will be flagged as a violation. If it is confirmed via Protortrack footage that you have violated the terms of taking the exam, then you will receive a zero for the exam. You will have an access code in order to begin the exam. All code must be in Java. Efficiency matters. For example, if you code something that uses O(n) time or worse when there is an obvious way to do it in O(1) time, your solution may lose credit. If your code traverses the data 5 times when once would be sufficient, then this also is considered poor efficiency even though both are O(n). Style standards such as (but not limited to) use of good variable names and proper indentation is always required. Comments are not required unless a question explicitly asks for them.
ADDITIONAL Instructions:
Because this is an online exam, many of the questions have specific instructions for formatting your answers. These instructions will be preceded by Answer Format in all cases. Make sure to read all questions carefully so that you do not miss anything important! Some question formats have been given in the Reality Check quizzes.
Final Exam Instructions (in addition to all the above instructions):
The final exam is in two parts for a total of 2.5 hours of test taking time. Each of the two parts of the final exam is 1.25 hours in length. (You may or may not need the full hour and half to complete each part.) The extra time has been allotted for any transition time you find necessary. The two parts must completed in the order that they appear in the module. There is an 24 hour window, 12:01 am to 11:59 pm EDT, on exam day in which to take your final exam. Canvas will automatically close the exam when time is up. Be sure to enter your answers in Canvas before it closes. Allow a full 3 hours for you final exam. We suggest beginning your exam before 9 pm in order to finish on time.

According to Institute rules, three exams in one day constitutes a Class Two conflict. Per those guidelines, http://www.catalog.gatech.edu/rules/12/ , you are expected to notify your instructor and make alternative arrangements two weeks before the beginning of exam week. This notification window is essential, because faculty members have a very busy time during finals week, and alternate exam periods are not always easy to arrange at the last minute. Additionally, per the posted regulations, when there is a Class


Page 8 of 9

6/4/20, 1)59 PM
Two conflict, it is always the middle exam period that is deemed to be in conflict, and the instructor of that course should be contacted with regard to alternative arrangements. If you make a request to the professor in the two weeks before finals week, it will be denied.
Important Dates (all dates are tentative and subject to change):

First Class Days First Recitation Day Memorial Day Exam 1 Withdraw Deadline Exam 2 Independence Day Last Class Final Exam
Party AVLs

May 11, 2020 May 13, 2020 May 25, 2020 Holiday June 4, 2020, Testing window 12:01 am to 11:59 pm June 27, 2020 (4pm) June 30, 2020, Testing window 12:01 am to 11:59 pm July 2 - 3, 2020 Holiday July 21, 2020 July 24, 2020, Testing window 12:01 am to 11:59 pm

Created by Adrianna Brown Party Graphs

Created by Jacob Allen


Page 9 of 9

Preparing to load PDF file. please wait...

0 of 0
CS1332 Data Structures & Algorithms