COSC-2436 Programming Fundamentals III: Data Structures
Kathryn Rehfield
Credit Summer 2024
Section(s)
COSC-2436-002 (79923)
LEC TuTh 5:10pm - 7:25pm DIL DLS DIL
LAB TuTh 7:25pm - 9:40pm DIL DLS DIL
Course Description/Rationale
Course Description:
Further applications of programming techniques, introducing the fundamental concepts of data structure and algorithms. Topics include recursion, fundamental data structures (including stacks, queues, linked lists, hash tables, trees, and graphs), and algorithmic analysis.
Prerequisite:
COSC 1337 or instructional program approval. Course Type: T.
Instructional Methodology:
This course will have 70% lecture and 30% laboratory.
The CIS open labs are available for students for work outside of scheduled lab time.
Course Rationale:
This course is designed to teach students the fundamental data structures and the algorithms used to manipulate them. The data structures and algorithms will be implemented in a modern object-oriented programming language (C++). Since this course is designed to transfer into a bachelor degree program, check with the college to which you plan to transfer to be sure that they will accept this course.
Course Requirements
Grade Policy:
Grade will be assigned based both on concepts and practical application. Exams, homework, and lab assignments will be a part of the grade. An overall grade will be assigned on the following grading scale:
90% - 100% A
80% - 89% B
70% - 79% C
60% - 69% D
0% - 59% F
Each student’s grade for this course consists of chapter exercises, exams, and program assignments. The grade breakdown is as follows:
Assignments |
Percent Each |
Percentage of Final Grade |
3 Exams |
13% |
39% |
23 Chapter Quizzes (18 chapters, 5 interludes) |
1% |
23% |
5 Programming Assignments |
7% |
35% |
Attendance and Participation |
3% |
3% |
Total |
|
100% |
Homework assignments (chapter quizzes) have a due date shown in Blackboard. These quizzes are taken in Blackboard. You can take the quizzes twice if you want to try to improve your grade, but you do not have to. If you take a quiz twice the two grades will be averaged for your final quiz grade. Some of the questions may be different each time the quiz is taken.
Since this is homework, you can use your book and notes and work on them together if you want.
The quizzes will be available with enough time to get them completed after the material is covered and will become unavailable once the due date passes.
Lab assignments are to be completed outside of class time either in a CIS open lab or using a personal computer with the appropriate tools installed. Labs are due according to the date specified with the assignment in Blackboard. Late lab assignments are not accepted. Lab assignments must be submitted via Blackboard.
Exams can be missed only for extreme circumstances (Example: hospitalization). Please contact the instructor IN ADVANCE if you will miss one of the exams. There are NO makeup exams for unexcused absences.
You will be taking your exams during the regular class time and will begin at the start of the class. Each student will take the exam on their own computer at their home or any location with Internet access.
It is expected that you will not cheat on the exams – no notes, no books, no Internet.
Exams will have a time limit in order to create a more restrictive test environment even though you are not in a classroom.
Contact me before each exam if you have time accommodations so we can work this out.
Student Learning Outcomes/Learning Objectives
Course Objectives / Learning Outcomes:
- Demonstrate a thorough understanding of the behavior of basic data structures: lists, stacks, queues and trees by developing programs that implement or apply these data structures.
- Demonstrate a thorough understanding of how data structures impact the performance of algorithms.
- Demonstrate a thorough understanding of the object-oriented concepts of data abstraction and encapsulation by designing and implementing data structures using classes.
- Demonstrate a thorough understanding of template classes by developing programs that use them.
- Demonstrate an understanding of recursion by applying recursive techniques to solve problems including list and tree processing.
- Demonstrate a thorough understanding of searching and sorting algorithms including recursive techniques.
- Demonstrate proficiency in implementing data validation code and performing unit and integration testing by developing robust solutions to the assignments in this course.
- Demonstrate good documentation style in all of the programs written in this course.
SCANS (Secretary’s Commission on Achieving Necessary Skills):
Refer to http://www.austincc.edu/cit/courses/scans.pdf for a complete definition and explanation of SCANS. The following list summarizes the SCANS competencies addressed in this particular course:
RESOURCES 1.1 Manages Time |
INTERPERSONAL 2.1 Participates as a member of a team 2.6 Works with Cultural Diversity |
INFORMATION 3.1 Acquires and Evaluates Information 3.2 Organizes and Maintains Information 3.3 Uses Computers to Process Information |
SYSTEMS 4.1 Understands Systems 4.2 Monitor and Corrects Performance 4.3 Improve and Designs Systems |
TECHNOLOGY 5.1 Selects Technology 5.2 Applies Technology to Task 5.3 Maintains and Troubleshoots Technology
|
BASIC SKILLS 6.1 Reading 6.2 Writing 6.3 Arithmetic 6.4 Mathematics 6.5 Listening |
THINKING SKILLS 7.2 Decision Making 7.3 Problem Solving 7.4 Mental Visualization 7.5 Knowing How to Learn 7.6 Reasoning |
PERSONAL SKILLS 8.1 Responsibility 8.2 Self-Esteem 8.3 Sociability 8.4 Self-Management 8.5 Integrity/Honesty |
Course/Class Policies
Attendance/Class Participation
Regular and punctual class and laboratory attendance is expected of all students. If attendance or compliance with other course policies is unsatisfactory, the instructor may withdraw students from the class.
Withdrawal Policy
It is the responsibility of each student to ensure that his or her name is removed from the roll should he or she decides to withdraw from the class. The instructor does, however, reserve the right to drop a student should he or she feel it is necessary. If a student decides to withdraw, he or she should also verify that the withdrawal is submitted before the Final Withdrawal Date. The last date to withdraw for this semester is July 15, 2024. The student is also strongly encouraged to retain their copy of the withdrawal form for their records.
Students who enroll for the third or subsequent time in a course taken since Fall, 2002, may be charged a higher tuition rate, for that course. State law permits students to withdraw from no more than six courses during their entire undergraduate career at Texas public colleges or universities. With certain exceptions, all course withdrawals automatically count towards this limit. Details regarding this policy can be found in the ACC college catalog.
Incompletes
A student may receive a temporary grade of “I” (Incomplete) at the end of the semester only if ALL of the following conditions are satisfied:
- The student is unable to complete the course during the semester due to circumstances beyond their control.
- The student must have earned at least half of the grade points needed for a “C” by the end of the semester.
- The request for the grade must be made in person at the instructor’s office and necessary documents completed.
- To remove an “I”, the student must complete the course by two weeks before the end of the following semester. Failure to do so will result in the grade automatically reverting to an “F”.
Statement on Scholastic Dishonesty
A student attending ACC assumes responsibility for conduct compatible with the mission of the college as an educational institution. Students have the responsibility to submit coursework that is the result of their own thought, research, or self-expression. Students must follow all instructions given by faculty or designated college representatives when taking examinations, placement assessments, tests, quizzes, and evaluations. Actions constituting scholastic dishonesty include, but are not limited to, plagiarism, cheating, fabrication, collusion, and falsifying documents. Penalties for scholastic dishonesty will depend upon the nature of the violation and may range from lowering a grade on one assignment to an “F” in the course and/or expulsion from the college.
See the Student Standards of Conduct and Disciplinary Process.
For this course, the penalty for scholastic dishonesty is a grade of ‘F’ for the course.
Student Rights and Responsibilities
Students at the college have the rights accorded by the U.S. Constitution to freedom of speech, peaceful assembly, petition, and association. These rights carry with them the responsibility to accord the same rights to others in the college community and not to interfere with or disrupt the educational process. Opportunity for students to examine and question pertinent data and assumptions of a given discipline, guided by the evidence of scholarly research, is appropriate in a learning environment. This concept is accompanied by an equally demanding concept of responsibility on the part of the student. As willing partners in learning, students must comply with college rules and procedures.
Statement on Students with Disabilities
Each ACC campus offers support services for students with documented disabilities. Students with disabilities who need classroom, academic or other accommodations must request them through the office of Student Accessibility Services (SAS). Students are encouraged to request accommodations when they register for courses or at least three weeks before the start of the semester, otherwise the provision of accommodations may be delayed. Students who have received approval for accommodations from SAS for this course must provide the instructor with the ‘Notice of Approved Accommodations’ from SAS before accommodations will be provided. Arrangements for academic accommodations can only be made after the instructor receives the ‘Notice of Approved Accommodations’ from the student. Students with approved accommodations are encouraged to submit the ‘Notice of Approved Accommodations’ to the instructor at the beginning of the semester because a reasonable amount of time may be needed to prepare and arrange for the accommodations.
Safety Statement
Austin Community College is committed to providing a safe and healthy environment for study and work. You are expected to learn and comply with ACC environmental, health and safety procedures and agree to follow ACC safety policies. Because some health and safety circumstances are beyond our control, we ask that you become familiar with the Emergency Procedures poster and Campus Safety Plan map in each classroom.
Please note, you are expected to conduct yourself professionally with respect and courtesy to all. Anyone who thoughtlessly or intentionally jeopardizes the health or safety of another individual will be immediately dismissed from the day’s activity, may be withdrawn from the class, and/or barred from attending future activities.
Testing Center Policy
http://www.austincc.edu/testctr/
Freedom of Expression Policy
It is expected that faculty and students will respect the views of others when expressed in classroom discussions.
Tutoring
Free tutoring is provided for this course both on line and face-to-face. For online schedules and details please refer to http:://www.austincc.edu/cit .
Student Files – Privacy
Their instructor for educational and academic reasons may view the information that a student stores in his/her student volume in the Computer Studies Labs.
Use of Electronic Devices (for on-ground classes)
The use of cell phones, music players and other electronic devices is not allowed at any time in the class or lab. Cell phones must be turned off and out of sight. The use of a laptop computer in class or lab is restricted to instructor approved activities. Using your cell phone in class will directly affect your class participation grade.
Concealed Handgun Policy
ACC faculty may notify students in their classes or learning environment about the Texas Campus Carry law taking effect at Austin Community College (and other Texas community colleges) on August 1, 2017. The following is recommended syllabus language, approved by legal counsel and the college. For courses including ACC-sponsored field activities, language is still being drafted.
The Austin Community College District concealed handgun policy ensures compliance with Section 411.2031 of the Texas Government Code (also known as the Campus Carry Law), while maintaining ACC’s commitment to provide a safe environment for its students, faculty, staff, and visitors.
Beginning August 1, 2017, individuals who are licensed to carry (LTC) may do so on campus premises except in locations and at activities prohibited by state or federal law, or the college’s concealed handgun policy.
It is the responsibility of license holders to conceal their handguns at all times. Persons who see a handgun on campus are asked to contact the ACC Police Department by dialing 222 from a campus phone or 512-223-7999.
1. Statement for standard classroom courses (non-exclusion zone)
Refer to the concealed handgun policy online.
2. Statement for classroom courses with physical activity (non-exclusion zone)
IMPORTANT: (Class name) classes may involve considerable physical activity. Bending, stretching, lifting, and other rigorous activities associated with (class name) occur regularly in class. Such activities may expose concealed weapons and place the license holder in violation of state law. Therefore, it is recommended that concealed weapons be stored in a secure place as defined by college policy prior to entering the classroom, studio, or learning space.
Refer to the concealed handgun policy online.
3. Statement for classroom courses in exclusion zones
IMPORTANT: (class name) classes are held in an area designated as an exclusion zone as defined by state law or the college’s concealed handgun policy. Concealed carry is prohibited in exclusion zones. Concealed weapons must be stored in a secure place as defined by college policy prior to entering the classroom, studio, or learning space.
Refer to the concealed handgun policy online.
4. Facts
- All public Texas colleges and universities must abide by the law.
- Private institutions may opt out of implementing the law.
- The concealed campus carry law does not allow open carry on campus.
- A person must have a License to Carry a Handgun (LTC).
- A person must be at least 21 to obtain a LTC, unless he/she is active duty military or a police officer.
- Faculty and staff do not have authority to ban handguns from classrooms.
- Campus carry laws exist in eight states (Texas, Colorado, Utah, Idaho, Mississippi, Kansas, Oregon, and Wisconsin).
- Licensed gun owners have been allowed to carry concealed handguns on public campuses (but not in buildings) for 20 years.
- While Texas is currently in a legislative session, there are no indications lawmakers will change the law.
Use of ACC E-mail
All College e-mail communication to students will be sent solely to the student’s ACCmail account, with the expectation that such communications will be read in a timely fashion. ACC will send important information and will notify you of any college related emergencies using this account. Students should only expect to receive email communication from their instructor using this account. Likewise, students should use their ACCmail account when communicating with instructors and staff. Instructions for activating an ACCmail account.
Student and Instructional Services
ACC strives to provide exemplary support to its students and offers a broad variety of opportunities and services. Information on these services and support systems is available here. Links to many student services and other information can be found at Current Students. ACC Learning Labs provide free tutoring services to all ACC students currently enrolled in the course to be tutored. The tutor schedule for each Learning Lab may be found here. For help setting up your ACCeID, ACC Gmail, or ACC Blackboard, see a Learning Lab Technician at any ACC Learning Lab.
Course Subjects
COURSE SCHEDULE
Week |
Date |
Topic |
Reading |
Assignments |
1 |
05/28
05/30 |
Intro, Syllabus, Data Abstraction C++ Classes Recursion Arrays |
Chapter 1 Interlude 1 Chapter 2 Chapter 3 |
Chapter 1 Quiz Interlude 1 Quiz Chapter 2 Quiz Chapter 3 Quiz |
2 |
06/04 06/06 |
Pointers and Polymorphism Linked Based Implementations |
Interlude 2 Chapter 4 |
Interlude 2 Quiz Chapter 4 Quiz LAB 1 Arrays & Recursion |
3 |
06/11 |
Recursion Problem-Solving Stacks ADT Stack Work on linked list program |
Chapter 5 Chapter 6 Chapter 7
|
Chapter 5 Quiz Chapter 6 Quiz Chapter 7 Quiz LAB 2 Stacks |
4 |
06/18 |
Exam 1 – Ch 1-7, Int 1-2 Lists List Implementations Smart Pointers |
Chapter 8 Chapter 9 Interlude 4 |
Chapter 8 Quiz Chapter 9 Quiz Interlude 4 Quiz |
5 |
06/25 |
Algorithm Efficiency Sorting Algorithms Class Relationships |
Chapter 10 Chapter 11 Interlude 5 |
LAB 3 Linked Lists Chapter 10 Quiz Chapter 11 Quiz Interlude 5 Quiz |
6 |
07/02
|
Sorted Lists Queues Queue Implementations July 4th Holiday |
Chapter 12 Chapter 13 Chapter 14 |
Chapter 12 Quiz Chapter 13 Quiz Chapter 14 Quiz |
7 |
07/09 |
Exam 2 – Ch 8-14, Int 4-5 Overloaded Operators Trees |
Interlude 6 Chapter 15 |
Interlude 6 Quiz Chapter 15 Quiz Lab 4 Binary Trees |
8 |
07/16 |
Tree Implementations Heaps |
Chapter 16 Chapter 17 |
Chapter 16 Quiz Chapter 17 Quiz |
9 |
07/23 07/25 |
Hash Tables Exam 3 – Ch 15-18, Int 6 |
Chapter 18
|
Chapter 18 Quiz |
Office Hours
M W 11:00 AM - 12:00 PM Virtual Office in Class for Zoom Room Online
NOTE Virtual Office in Class for Zoom Room Online Available by appointment only. Make an appointment in advance via email.M T W Th 9:00 AM - 4:00 PM Virtual Office in Class for Zoom Room Online
NOTE Virtual Office in Class for Zoom Room Online Available by appointment only. Make an appointment in advance via email.T Th 3:00 PM - 5:00 PM Virtual Office in Class for Zoom Room Online
NOTE Virtual Office in Class for Zoom Room Online Available by appointment only. Make an appointment in advance via email.Published: 05/26/2024 08:10:14