Instructor(s):
Dr. Wayne
Summers
Office: CCT 455
Office phone: (706) 568-5037
Department phone: (706)
568-2410
Department FAX: (706) 565-3529
Office Hours: MWF 10:00a.m. - noon, TR 11-noon, 2:00-3:00p.m.; via e-mail,
WebCT discussions and by appointment
e-mail address: summers_wayne@ColumbusState.edu
homepage: http://csc.ColumbusState.edu/summers
Class Meets: TR 9:30-10:45 a.m. in Center for Commerce and Technology 408
Prerequisite: CPSC 1302 with a C or better. This course extends the concepts of primitive data types by teaching the student a set of data structures that pervades both the theoretical and practical domains of computer science. (3 credits).
· Students will learn to understand the principles of efficiency of algorithms
o Strategies and Actions used to produce the outcome:
§ Introduction to the Big-O Analysis
o ABET Criteria covered: B, C, D, and I.
o Program Objectives covered: 2 and 3.
o Assessment Methods: Programming Assignments, Quizzes, Midterm Test and Final Exam.
· Students will learn to understand how to specify, design and implement Abstract Data Types
o Strategies and Actions used to produce the outcome:
§ Study of the definition of Abstract Data Types
§ Study of the implementation of ADTs in Java
o ABET Criteria covered: B, C, D, and I.
o Program Objectives covered: 2 and 3.
o Assessment Methods: Programming Assignments, Quizzes, Midterm Test and Final Exam.
· Students will learn to be able to implement and use data structures such as Lists, Stacks and Queues Data Structures.
o Strategies and Actions used to produce the outcome:
§ Study of specification of Lists, Stacks and Queues among others
§ Study of the implementation of Lists, Stacks, and Queues in Java among others
o ABET Criteria covered: B, C, D, and I.
o Program Objectives covered: 2 and 3.
o Assessment Methods: Programming Assignments, Quizzes, Midterm Test and Final Exam.
· Students will learn about and learn to use the concept of Recursion.
o Strategies and Actions used to produce the outcome:
§ Study of Recursion
§ Study of the uses of Recursion
o ABET Criteria covered: B, C, and D.
o Program Objectives covered: 2 and 3.
o Assessment Methods: Programming Assignments, Quizzes, Midterm Test and Final Exam.
· Students will learn to implement and use Binary Search Trees.
o Strategies and Actions used to produce the outcome:
§ Study of the concept of Binary Search Trees
§ Study of the implementation and use of Binary Search Trees
o ABET Criteria covered: B, C, and D.
o Program Objectives covered: 2 and 3.
o Assessment Methods: Programming Assignments, Quizzes, Midterm Test and Final Exam.
· Students will learn to implement and use Priority Queues, Heaps, and Graphs.
o Strategies and Actions used to produce the outcome:
§ Study of the concept of Priority Queues, Heaps, and Graphs
§ Study of the implementation and use of Priority Queues, Heaps, and Graphs
o ABET Criteria covered: B, C, and D.
o Program Objectives covered: 2 and 3.
o Assessment Methods: Programming Assignments, Quizzes, Midterm Test and Final Exam.
· Students will learn to implement and use Sorting and Searching Algorithms.
o Strategies and Actions used to produce the outcome:
§ Study of the concept of Sorting and Searching Algorithms
§ Study of the use of Sorting and Searching Algorithms
o ABET Criteria covered: B, C, and D.
o Program Objectives covered: 2 and 3.
o Assessment Methods: Quizzes, Midterm Test and Final Exam.
· Big-O Analysis.
· Abstract Data Types.
· Stacks.
· Recursion.
· Queues.
· Lists.
· Binary Search Trees.
· Priority Queue, Heaps, and Graphs.
· Sorting and Searching Algorithms.
|
|
Assignments for Course
A (90-100): The student fulfills or exceeds all of the assigned content requirements. The student’s knowledge of the subject is accurate throughout. The student exhibits convincing range and quality of knowledge, having done appropriate research, if applicable.
B (80-89): The student fulfills all of the important assigned content requirements. The student’s knowledge of the subject is accurate throughout except in minor details. The student seems informed on the subject, having done appropriate research, if applicable
C (70-79): The student fulfills most of the important assigned content requirements. The student’s knowledge of the subject is generally accurate, though flawed. The student exhibits limited range or quality of knowledge, having done limited appropriate research, if applicable.
D (60-69): The student fulfills some of the important assigned content requirements. The student’s knowledge of the subject is generally accurate, though flawed. The student exhibits limited range or quality of knowledge, having done minimal appropriate research, if applicable.
F (0-59): The student fails
to address the important requirements of the course.
The student’s knowledge of the subject is generally inaccurate. The student’s
knowledge of the subject lacks range or quality
Class Attendance: Class attendance is the responsibility of the student, and it is the student's responsibility to independently cover any materials missed. Class attendance and participation may also be used in determining grades. It is your responsibility to sign a roll sheet for every class meeting. At my discretion, I may drop you from the course for more than six (6) absences. Missing an exam or quiz is considered an absence. Missed classes caused by participation in documented, formal, University-sponsored events will not count as absences provided you notify me of such anticipated absences in advance and as soon as possible.
You are responsible for all class work missed, regardless of the reason for the absence(s). Late assignments will not be accepted, so if you are absent on the day an assignment is due, it is your responsibility to make alternate arrangements. No makeup exams or quizzes will be given, so please make sure you are present for all exams/quizzes. Refer to the CSU Catalog (http://aa.ColumbusState.edu/advising/a.asp#AbsencePolicy) for more information on class attendance and withdrawal.
Academic dishonesty For assignments, access to notes, textbook, books and other publications is allowed. Stealing, giving or receiving any code, diagrams, drawings, text or designs from another person (CSU or non-CSU) is not allowed. Having access to another person’s work on the system or giving access to your work to another person is not allowed. It is your responsibility to keep your work confidential. No cheating in any form will be tolerated. The penalty for the first occurrence of academic dishonesty is a zero grade on the assignment or exam/quiz; the penalty for the second occurrence is a failing grade for the course. For exams/quizzes, access to any type of written material or discussion of any kind (except with me) is not allowed. (http://aa.ColumbusState.edu/advising/a.asp#Academic Dishonesty/Academic Misconduct) Getting help |
Software
To complete all lessons, assignments, labs, and tests, you will need to
access a computer with:
The class material will be available via WebCT Vista at http://colstate.view.usg.edu/. This Web Site will contain class notes, class announcements, exam summaries, the course syllabus, test dates, and additional links.
Course Material Downloads
To download Java SDK: http://java.sun.com/
To download Dr. Java: http://www.drjava.org/
To download Crimson Editor: http://crimsoneditor.com
To download Blue J: http://www.bluej.org/download/download.html
To download Text Pad: http://www.textpad.com/download/index.html
To download Eclipse: http://www.eclipse.org/downloads/
To download Netbeans: http://netbeans.org/
Instructional Methods and Techniques
How to Access the Course
This course includes WebCT Vista. You can access WebCT Vista at: https://colstate.view.usg.edu
At this page, select the "Log on to" WebCT Vista link to activate the WebCT Vista logon dialog box, which will ask for your WebCT Vista username and password. Your Vista WebCT username and password are:
Username: lastname_firstname
Password: XXXX
Default password is your birthday in the format of DDMMYY.
If you try the above and WebCT Vista will not let you in, please use the "Comments/Problems" link on the WebCT Vista home page to request help. If you are still having problems gaining access a day or so after the class begins, please e-mail me immediately.
Once you've entered WebCT Vista, you will see a list of courses you have access to. The CPSC 108 course is listed as "Data Structures". Next to this, you should see my name as the instructor. You may also see new discussion postings, new calendar postings, and new mail messages. Clicking on the name of the course will take you to the course's home page. If you do not see the "Data Structures" course in the list, please e-mail me immediately.
Once you have clicked on the course's name and accessed the particular course itself, you will find a home page with links to other sections and tools, and a menu on the left-hand side. Feel free to explore the areas in the course.
Website
It is your responsibility to frequently look at the course website to keep
your knowledge of class activities current. For this course, the website
is at http://csc.ColumbusState.edu/summers.
I may occasionally forget to announce details in class, but they may have been
already posted on the site and/or in WebCT. If so, you will still be held
responsible for them. For example, assignment due dates, corrections of errors,
announcements, exam dates, changes to policies, and so on.
Discussion Etiquette
CSU is committed to open, frank, and insightful dialogue in all of its courses. Diversity has many manifestations, including diversity of thought, opinion, and values. Students are encouraged to be respectful of that diversity and to refrain from inappropriate commentary. Should such inappropriate comments occur, I will intervene as I monitor the dialogue in the discussions. I will request that inappropriate content be removed from the discussion and will recommend university disciplinary action if deemed appropriate. Students as well as faculty should be guided by common sense and basic etiquette. The following are good guidelines to follow:
Never post content that is harmful, abusive; racially, ethnically, or religiously offensive; vulgar; sexually explicit; or otherwise potentially offensive.
Student Responsibilities
As a student in this course, you are responsible to:
“I didn’t know” is NOT an acceptable excuse for failing to meet the course requirements. If you fail to meet your responsibilities, you do so at your own risk.
Instructor Responsibilities
As your instructor in this course, I am responsible to:
Although I will read every posted discussion question and response, I will not necessarily respond to every post.
Student Web Server Space
There may be times when you will want to use an actual Web server in response to discussion questions, for assignments, or for projects. All currently enrolled CSU students (including online students) can request free Web server space on the CSU student Web server. Simply go to http://webs.ColumbusState.edu/personal/ and click on the "Free Web Pages" icon. Then click on the link to request the account. Under normal circumstances, the account and space will be created in a matter of seconds. This server is also .NET capable.
CSU ADA
statement
If you have a documented disability as described by the Rehabilitation
Act of 1973 (P.L. 933-112 Section 504) and Americans with
Disabilities Act (ADA) and would like to request academic and/or physical
accommodations please contact Joy Norman at the Office of Disability
Services in the Center for Academic Support and Student Retention, Tucker
Hall (706) 568-2330, as soon as possible. Course requirements will not be
waived but reasonable accommodations may be provided as appropriate.
ABET Criteria:
A. An ability to apply knowledge of computing and mathematics appropriate to the discipline;
B. An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;
C. An ability to design, implement and evaluate a computer-based system, process, component, or program to meet desired needs;
D. An ability to function effectively on teams to accomplish a common goal;
E. An understanding of professional, ethical, legal, security, and social issues and responsibilities;
F. An ability to communicate effectively with a range of audiences;
G. An ability to analyze the local and global impact of computing on individuals, organizations and society;
H. Recognition of the need for, and an ability to engage in, continuing professional development;
I. An ability to use current techniques, skills, and tools necessary for computing practice.
J. An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices;
K. An ability to apply design and development principles in the construction of software systems of varying complexity.
CS Program Objectives:
Our graduates will have achieved:
1) a broad general education assuring an adequate foundation in science and mathematics relevant to computing.
2) a solid understanding of concepts fundamental to the discipline of computer science.
3) good analytic, design, and implementation skills required to formulate and solve computing problems.
4) the ability to function and communicate effectively as ethically and social responsible computer science professionals.
COURSE OUTLINE (tentative)
DATE |
Chapter / Description |
Assignments/Quizzes |
|
Week 1: (Jan. 11-15) |
Introductions 1.1-1.6 1.7 |
Review of CS 1 & 2 Big-O Analysis |
|
Week 2: (Jan. 18-22) |
2.1-2.4 2.5-2.8 |
ADT Linked Lists |
Quiz 1(chapter 1) UML Lab 1 (due 1/21) |
Week 3: (Jan. 25-29) |
3.1-3.3 3.4-3.6 |
Stack ADT Stack implementations |
Quiz 2 (chapter 2) Lab 1 (due 1/28) |
Week 4: (Feb. 1-5) |
3.7-3.8 4.1-4.2 |
Post-fix Recursion |
UML Lab 2 (due 2/4) Quiz 3 (chapter 3) |
Week 5: (Feb. 8-12) |
4.3-4.5 4.6-4.7 |
Recursion
|
Lab 2 (due 2/11) |
Week 6: (Feb. 15-19) |
5.1-5.3 5.4-5.5 |
Queue ADT Queue implementations |
Quiz 4 (chapter 4) UML Lab 3 (due 2/18) |
Week 7: (Feb. 22-26) |
5.6-5.7 Review |
Average Waiting Time |
Lab 3 (due 2/25) Quiz 5 (chapter 5) |
Week 8: (Mar. 1-5) |
Midterm 6.1-6.3 |
Chapters 1-5 List ADT |
UML Lab 4 (due 3/4) |
Mar. 8-12 |
SPRING BREAK |
||
Week 9: (Mar. 15-19) |
6.5-6.6 6.7-6.8 |
List implementations List applications |
Lab 4 (due 3/18) |
Week 10: (Mar. 22-26) |
7.1-7.2 7.3-7.4 |
Circular lists; doubly linked lists; headers/trailer |
Quiz 6 (chapter 6) UML Lab 5 (due 3/25) |
Week 11: (Mar 29-Apr2) |
7.5-7.6 8.1-8.3 |
List Examples Trees |
Lab 5 (due 4/1) Quiz 7 (chapter 7) |
Week 12: (Apr. 5-9) |
8.4-8.6 8.7-8.10 |
Tree implementations BST |
UML Lab 6 (due 4/8) |
Week 13: (Apr. 12-16) |
9.1-9.2 9.3-9.4 |
Priority Queues, Heaps Graph ADT |
Quiz 8 (chapter 8) Lab 6 (due 4/15) |
Week 14: (Apr. 19-23) |
9.5-9.6 10.1-10.4 |
Graph applications Sorting |
UML Lab 7 (due 4/22) Quiz 9 (chapter 9) |
Week 15: (Apr. 26-30) |
10.5-10.6 REVIEW |
Searching, Hashing |
Lab 7 (due 4/29) Quiz 10 (chapter 10) |
Week 16: (May 3-8) |
May 4: STUDY DAY |
FINAL EXAM (Sat., May 8 at 10:30 a.m.-12:30 p.m.) |
|
Please return the following information to me as soon as possible.
CPSC 2108 (CRN 21345) Spring 2010
Student’s name: ___________________________________ (please print)
Where can I reach you in case it becomes necessary? **
Email address that you use regularly: _____________________________________
Phone number(s): ____________________________________________________
Declaration: I have read, understood and agree to abide by the policies mentioned in the syllabus pertaining to the course. In particular, I agree to abide by the assignment policy/late work policy, attendance policy, academic dishonesty policy, website policy and exam policy.
(You must sign and date below).
Signature: _______________________________ Date: ________________
** Optional information