ABET Syllabus Template COMP1020 (Honors) Adams Fall 2022
ABET Syllabus Template COMP1020 (Honors) Adams Fall 2022
General Information
Required Textbook
• Algorithms in C, Third Edition by Robert Sedgewick. (Parts 1-5)
Course Description
Pointers. Lists, stacks and queues. Binary trees, AVL trees, n-ary trees. Advanced sorting
via quicksort, heapsort, etc. Characters and strings. Graphs. Advanced file techniques.
Recursion. Programming style, documentation, and testing. This course includes extensive
laboratory work. Effective Fall 2013, Co-req: Computing 2 lab.
Course Prerequisites
• COMP1010 Computing I and COMP1030L Computing I Lab.
Course Category
• Required
Additional Course Information
• Purpose – This course is intended to provide the student with an understanding of
hardware and software concepts, program design with data structures, and
programming in C.
• Web Page – on Blackboard
• Software – Visual Studio 2017 or 2019
1
ABET Student Outcomes:
By the conclusion of the course, students must demonstrate:
This course will extend the student’s knowledge about programming. Data
structures, complexity analysis, testing, and good software development practices
will be practiced and evaluated.
(b) An ability to analyze a problem, and identify and define the computing
requirements appropriate to its solution.
3. Introducing new tools or facilities that can meet the new requirements.
(i) An ability to use current techniques, skills, and tools necessary for computing
practice.
Students will cover vectors, linked lists, stacks, queues, trees, graphs, heaps and
hash tables all using opaque objects in C.
Course Outcomes:
Methodology
Teaching methods: This course will make use of lectures, examples, and question and
answer sessions. Hands-on programming activities using computers
during class, in addition to active reading, experimenting with sample
programs, and problem solving, will be used during the semester.
Independent programming assignments are used to evaluate language
and coding skills.
Assessment: There will be in-class exercises, regular problem sets and quizzes,
programming exercises, two in-class written exams, and a
comprehensive final exam.
Grading:
The available points for the various assignments in this class are:
3
The above comprises your lecture grade. Your lab grade will account
for up to 25% of your total score where the remaining score is
accounted for using your lecture grade and you will receive the
same grade in the lecture as you receive in the lab; the courses are
linked.
A 90-100%
B 80-89%
C 70-79%
D 60-69%
F Below 60%
Course Policies
Academic integrity: The practice of good ethical behavior is essential for maintaining
good order in the classroom, providing an enriching learning
experience for students, and as training as a practicing computing
professional upon graduation. This practice is manifested in the
University’s Academic Integrity policy. Students are expected to
strictly avoid academic dishonesty and adhere to the Academic
Integrity policy as outlined in the course catalog. Violations will be
dealt with as outlined therein.
4
however, may not share answers or the specifics of how to answer the
question.
The sanction for the first violation of the Academic Integrity policy or
plagiarism policy will result in a minimum failing grade on the
relevant assignment and the violation will be reported to the student’s
department chair. Once the final decision has been rendered and any
or all appeals exhausted by any parties involved, the instructor or
appropriate parties will carry out the recommended sanction.
3. Turn off and stow all cell phones, pagers, and any other
personal electronic devices once the lecture has begun.
Computer use: Students are encouraged to use their laptop computer for taking notes
and other activities directly related to the course. The manner in
which students use the computer in class is considered a matter of
honor and professionalism. Students will adhere to the following
guidelines:
5
2. Computer use must be subtle and must not distract fellow
classmates or the instructor.
Course readings: Readings are to be completed before the class session for which they
have been assigned; material covered in each reading is fair game for
class discussions and unannounced quizzes.
Exams: A discussion of the topics covered by each exam will occur during
class at most one week from the scheduled exam date.
Final exam: The comprehensive final exam for this class will fall between
December 14th and December 21st.
Late work: Late assignments or projects will not be accepted without prior
approval. Students must consult the instructor at least three days
prior to the scheduled due date of any assignment to make alternative
arrangements; however, the instructor is under no obligation to grant
any such request. Penalties such as a reduced score may be applied at
the instructor’s discretion.
6
Tentative Schedule
Topic Week
Course Introduction 1
Introduction to software Engineering 2
Type Independent Vectors 3
Type Independent Stack 4
Linked Lists, Recursion, and Queues 5
Exam 1 General Lists 6
General Lists 7
Trees, Heaps, AVL-Trees 8
Toward Building an Associative Array 9
Binary Trees, AVL trees 10
Graphs 11
Searching 12
Exam 2 13
Sorting 14
Review 15