Email: ![]()
TA: Kyle Yount
Course website: http://csci.biola.edu/csci106/
Class: 10:30 ~ 11:45pm MW: at BUSN 209
Course
objectives
² Learn the fundamental data
structures in computer science, including vectors (as dynamic arrays), linked
lists, search trees, associative arrays, stacks, queues, heaps, and hash
tables.
² Learn the fundamental
concepts of object-oriented programming and the skills of designing and
implementing data structures and abstract data types as C++ classes.
² Develop the computer
problem-solving skills using fundamental data structures and object-oriented
programming in C++.
² Cultivate basic
software-engineering skills in the design, implementation, and testing of
programs.
Textbook
² Tony Gaddis, Starting Out With C++, 7th Ed., 2012.
² Stanley Lippman, etc. C++ Primer (5th
Ed), Addison Wesley, 2012.
·
· Programming assignments 40%
· Midterm 20%
· Final 25%
Weekly Progress Report for the Reading and
Participation Credit:
Download the template of cumulative weekly progress report. Keep updating this cumulative weekly progress report as a file throughout the semester. By the end of every Thursday, you should incorporate information of what you have done and the amount of time you spent for the reading, the lab assignment, the programming assignment, or other written assignments since last Thursday into the cumulative progress report. This file serves as the basis for you to gain the credit of “Reading/Participation”, which accounts for 15% of the total grade weight.
Submission of the Weekly Cumulative Progress Report:
Due dates of various assignments
will all be on Thursdays. In order to get full credit for an assignment, you
must send it in by the end of due date. Late submission up to 7 days late will
end in 40% reduction in the points received. Assignments turned in more than 7
days late will not be accepted unless there is a special reason.
Tentative
Schedule
² Week 1 Objects and C++ Classes:
data members + member functions
² Week 2 Objects and C++ Classes: operator overloading and friends
² Week 3 C++ vector class; Concept of recursion
² Week 4 Basic of pointers and dynamic memory
allocation
² Week 5 More on pointers and dynamic memory
allocation
² Week 6 Functions, references, reference parameters
² Week 7 Midterm
² Weeks 8-9 Linked lists:
implementation and application
² Week 10-11 Binary Search Trees:
implementation and application
² Week 12 Variants of Search Trees;
Heaps
² Week 13 Stacks and queues:
implementation and application
² Week 14 Hash tables
² Week 15 The C++ Standard template
library (
² Final
ACADEMIC HONESTY POLICY: We are committed at Biola University to ethical practice
in teaching, scholarship, and service.
As such, plagiarism and other forms of academic dishonesty will not be
tolerated. Please see the
undergraduate/graduate student handbook and/or the departmental/program/school
policy on academic honesty. It is
imperative that you present all written, oral, and/or performed work with a
clear indication of the source of that work.
If it is completely your own, you are encouraged to present it as such,
taking pleasure in ownership of your own created work. However, it is also imperative that you give
full credit to any and all others whose work you have included in your
presentation via paraphrase, direct quotation, and/or performance, citing the
name(s) or the author(s)/creator(s) and the source of the work with appropriate
bibliographic information. To do otherwise is to put oneself in jeopardy of
being sanctioned for an act or acts of plagiarism that can carry serious
consequences up to and including expulsion from the university.
Students
desiring accommodations on the basis of physical, learning, or psychological
disability are to contact the Learning Center (x4542) located in room U137, on
the upper level of the library.