MEDGAR EVERS COLLEGE of CUNY
Department of Physical, Environmental and Computer Sciences
Department Office, Carroll 417 - Phone 718-270-6453
“Time, Effort, Integrity”
Data Structures and Algorithms (CS 246)
3 class hours, 1 lab hour, 3 credits
Course Description: This course is arguably the most important course that a computer science major will take. It provides the essential building blocks utilized in software design, implementation and analysis. Students will be introduced to basic structures including lists, stacks, queues and trees and deepen their understanding of object-oriented programming. The course will also include modules on recursion and algorithmic complexity will be a recurrent theme.
Prerequisite: CS 151, Introduction to Computing, CS 244 Object-Oriented Programming or equivalents
Required Textbook: Larry Nyhoff, ADTs, Data Structures and Problem-Solving with C++, 2nd edition, Pearson/Prentice-Hall, ISBN: 0-13-140909-3
References: Consult textbooks from CS 151 and CS 244
Course Requirements: All students are responsible for arriving on time, attending class regularly, and participating fully in the work of the course. Additionally, students are not to work on other materials in class. Assigned reading and problems should be completed before class.
Grading Procedure: The final grade will be determined objectively by using a weighted average of the following components: quizzes, programming assignments, in-class labs, mid-term and the final examinations. Note that missed quizzes and examinations cannot be made-up. The lowest score from all quizzes will be dropped, before calculating the final average, provided all quizzes are taken.
Academic Requirements and Regulations: Students who officially withdraw from a course between the 4th through the 8th week receive a grade of W, which is not counted in computing the grade point average. Courses officially dropped after the 8th week of class will appear as a WF and count as an F grade. INC (Incomplete) grades will only be given to students who are passing the course.
Honor Code and Plagiarism: Students are required to sign and adhere to the departmental honor pledge. Check with the department for a copy of the pledge.
CUNY Proficiency Examination (CPE)
The CPE is a graduation requirement. All students between 45-60 credits are required to sit for and pass the CPE. You have only three chances to pass this examination. Each missed scheduled examination after the 45 credit mark counts as a failure. For more information about this requirement, contact the Medgar Evers College CPE Liaison.
MEDGAR EVERS COLLEGE of CUNY
Department of Physical, Environmental and Computer Sciences
Blackboard – all students must have access to Blackboard. Course materials, projects, quizzes, etc. will on the CS 246 course site. In addition, all homework and programming projects must be uploaded to Blackboard.
Course Outline
Weekly Topics
1 Software Development; models, stages, etc.
Ch. 1 – all sections
ADTs, pointers, arrays, classes - review
2-3 Ch 2 – 2.1-2.4, Ch 3 – 3.1-3.2, Ch 4 - 4.1-4.5
4-5 Lists – insertion, deletion, traversal, list class, applications
Ch. 6 – 6.1-6.5
Stacks; array-based, infix, prefix, postfix expressions,
Relationship with trees, evaluating arithmetic expressions
Ch. 7 – 7.1, 7.2, 7.5
8-9Stack class using lists, use of stacks in function calls
Ch. 7 – 7.3-7.4
10-11 Queues, circular, array-based, list-based, applications
Ch 8 – 8.1-8.4
12-14 Trees, tree traversals, breadth-first, depth-first searching, applications
Ch. 12 – 12.1-12.5
15Final project due, final exam