1. Instructor Information:
Name Mr. Charles Kwiatkowski
E-mail address charles_kwiatkowski@ivcc.edu
Office hours Monday 3:45 – 5:15
Tuesday 3:45 – 5:15
Wednesday 3:45 – 5:15
Thursday 3:45 – 5:15
Friday By Appointment Only
Contact information Charles Kwiatkowski
A Building, Room 330
IVCC
815 North Orlando Smith Road
Oglesby, IL 61348
+1 (815) 408 0876
2. Course description
Builds
on the foundation provided by the CSI 1011 and CSI 1012 sequence which
introduced the concepts of object oriented design using methods, classes, inheritance
and polymorphism. This course covers design and implementation of large-scale
problems; abstract data types; data structures (files, sets, pointers, lists,
stacks, queues, trees, graphs); program verification and complexity (Big O);
recursion; dynamic concepts (memory, scope, block structures); text processing;
and searching and sorting algorithms.
Prerequisite: CSI 1012 with a grade of C or better
Credit Hours: 4
3. Course Meeting Times
No official time, but I will be in A-211 at 5:30pm on Tuesday evenings. I hope to see you so I can grade your latest HW assignment then. I will stay as long as necessary, but as soon as no-one is present, I will leave.
4. Expected learning outcomes
Upon successful completion of the course, the student will be able to:
· Create and use methods and classes that utilize generics
· Understand and explain the benefits and costs of using data structures.
· Analyze and explain the complexity of algorithms.
· Identify situations where using linked lists is appropriate.
· Be able to create and understand Java programs using linked lists.
· Identify situations where using stacks and queues is appropriate.
· Be able to create and understand Java programs using stacks and queues.
· Identify situations where using recursion is appropriate.
· Be able to create and understand Java programs using recursion.
· Identify situations where using recursion is appropriate.
· Be able to create and understand Java programs using recursion.
· Identify situations where using trees is appropriate.
· Be able to create and understand Java programs using trees.
· Identify situations where using graphs is appropriate.
· Be able to create and understand Java programs using graphs.
· Analyze, understand, and explain the relative merits of different sorting algorithms.
· Be able to create and understand Java programs using different sorting algorithms.
· Identify situations where hashing is appropriate,
· Be able to create and understand Java programs using hashing.
5. Disability statement :
You may be eligible for academic accommodations if you have a documented physical, psychiatric (anxiety, depression, bipolar disorder, AD/HD, post-traumatic stress, or others) or cognitive disability such as a learning disability. If you have a disability and need more information regarding possible accommodations, please contact
Tina Hardy at (tina_hardy@ivcc.edu, 224-0284) or
Judy Mika Judy_Mika@ivcc.edu or 224-0350) or
stop by office B-204.
6. Attendance Policy
None. This is an independent study course. However, this is not a self-paced course. Assignments and exams MUST be completed by the due dates detailed at the end of this syllabus
Failure to keep up and submit homework and exams on-time will result in removal from the course.
7. Assessment of student learning.
Student learning will be assessed by homework and exams.
8. Grading: The grading of the course will fall into 3 categories:
Homework
This is where you will develop and apply your knowledge relevant to the topic. There shall be about 1 homework per chapter. Homework will consist of hands-on programming work and short answer questions. Each chapter's combined work shall be worth approximately 100 points.
Midterm exam
Based on the Homework. It shall be worth 250 points.
Final Exam
Based on the Homework. It shall be worth 250 points.
Final grade by percentage of possible points
90-100% A
80-89% B
70-79% C
60-69% D
< 60% F
Note: Grades are not rounded up or down. Example: if you end up with an overall course grade of 89.99%, you have earned a B.
9. Withdrawal policy
According to IVCC, you may withdraw from this course with instructor permission.
You may withdraw from this course for any reason you like. I shall not shame you nor chide you for dropping the course, but I may inquire why. The only exception for this rule shall be for people who have left their lab partner "hanging". This applies only to classes with labs using lab partners.
Note: Just because you stop showing up for class does not grant you a grade of I (incomplete) or W (withdrawn). You must promptly contact me in order to receive a grade of I or W.
Effective Summer 2011, students have the ability to initiate a withdrawal from classes. By completing the form in the Records Office or through the form located within WebAdvisor, the student is authorizing IVCC to remove him/her from the course. Entering the student ID number serves as the student’s electronic signature. IVCC has the right to rescind a withdrawal in cases of academic dishonesty or at the instructor’s discretion.
Students should be aware of the impact of a withdrawal on full-time status for insurance purposes and for financial aid. It is highly recommended that students meet with their instructor or with a counselor before withdrawing from a class to discuss if a withdrawal is the best course of action for that particular student. More detailed information is available at www.ivcc.edu/admissions and selecting the menu item for Withdrawals on the left side of the page.
Personal advice: Education is not a race. There is no shame in strategic retreat. Drop the class in which you are performing the worst in, not the one you like the least. Always aim to keep your grade point average high as it will take you farther than how long it took you to complete your degree/certificate/program.
10. Cell phone and text messaging policy.
Calculators, Laptop PCs, Cell Phones, iPods, and other electronic devices are not allowed during exams and quizzes unless otherwise specified. failure to comply with these rules will result in ejection from the exam and a grade of F for the exam.
11. Financial aid statement
Withdrawal from a course can affect financial aid. Students who receive financial aid should see an advisor in the financial Aid Office before withdrawing from a course.
12. Plagiarism statement/academic honesty
Policies regarding cheating may be found under the heading of “Academic Integrity” in the IVCC Student Handbook. Students should become familiar with these policies and are REQUIRED to abide by them.
Furthermore, don't even think about cheating. Cheating is not tolerated at all. Although I encourage you to collaborate and discuss ideas and concepts from this class with others, you are responsible for your own work. A common example of cheating is when several students work together on an assignment, typically short-answer questions, and submit answers as a group without EACH individual working on his/her own individual answer.
Another common example of dishonesty is Googling short-answer questions to find answers. This is not an exercise in learning. It is cheating and laziness, pure and simple. The bulk of the answers may be found in the text. Others you should have from TAKING NOTES during lecture. Be warned that I rewrite questions for the exams in order to catch people who simply Google for answers. You WILL be sorry.
When you cheat, you insult my intelligence.
13. Any classroom rules
Not relevant. This is an independent study course.
14. Outline of assignments for the semester
There shall be approximately 12 assignments, 1 per chapter.
Each chapter's assignment shall normally contain:
· Short answer (True/False, Multiple Choice, etc.) questions
· Hands-On programming
15. Hints on how to be successful in the course
· Read the book before lecture.
· After reading the book, pay attention during lecture. If you still don't understand, ask a question,
· Do as much work as possible in the lab as possible, because if you have a problem, I am right there to help.
· Start homework early and keep working until 100% complete. It is IMPOSSIBLE to accurately predict how much debugging is necessary. Waiting until shortly before the assignment is due is a recipe for failure.
16. Required text and materials
As these items are required, they should be covered by Financial Aid
Java™ Software Structures: Designing and Using Data Structures, Third Edition
John Lewis; Joseph Chase
Publisher: Addison-Wesley
Copyright year: © 2010 Pages: 576
eText
ISBN-10 0-13-609514-3
ISBN-13 978-0-13-609514-9
ISBN-10 0-13-607858-3
ISBN-13 978-0-13-607858-6
1GB or larger Thumb Drive.
17. Additional Resources
Optional Text:
Although this text is optional, you are highly encouraged to include it in your library as it is one of the seminal texts of computer science.
Introduction to Algorithms
Cormen, Leiserson, Rivest, and Stein
Publisher: The MIT Press; 3 edition (September 30, 2009)
Language: English
ISBN-10: 0262033844
ISBN-13: 978-0262033848
18. Important Semester Dates
|
August 16 (T) |
In-service for Faculty |
|
August 17 (W) |
CLASSES BEGIN |
|
August 30 (T) |
Last day for refund for 16 week classes |
|
August 31 (W) |
New Student Convocation |
|
September 5 (M) |
Labor Day (College closed) |
|
October 3 (M) |
Deadline to Apply for Fall Graduation |
|
October 7 (F) |
Faculty Development Day (College closed) |
|
October 13 (R) |
MIDTERM (Last day for first 8-week classes) |
|
October 14 (F) |
Fall Break (College closed) |
|
November 1 (T) |
Online registration begins for Spring |
|
November 2 (W) |
In-person registration begins for Spring |
|
November 3 (R) |
Phone/fax/mail registration begins for Spring |
|
November 8 (T) |
Last day for student withdrawal for 16 week classes |
|
November 11 (F) |
Veteran’s Day (College closed) |
|
November 23, 24, 25 (WRF) |
Thanksgiving Break (College closed) |
|
November 28 (M) |
Classes resume |
|
December 6, 7, 8, 12 (TWRM) |
Evening Semester Exams |
|
December 12,13,14, 15 (M-R) |
Day Semester Exams |
|
December 20 (T) |
Final Grades due in Records Office at 10 am Semester Ends |
|
December 16 (F) |
Student Break begins |
|
December 20 (T) |
Faculty Break begins |
|
December 22 (R) |
Staff Break begins (College Closes at 4:30 p.m.) |
|
December 23-January 2 |
College Closed |
18. Topic Schedule
This schedule is tentative and subject to change.
|
Date |
Topic(s) |
|
Tuesday, August 23, 2011 |
Syllabus
Review |
|
Tuesday, August 30, 2011 |
Chapter 1: Introduction |
|
Tuesday, September 06, 2011 |
Chapter 2: Analysis of Algorithms |
|
Tuesday, September 13, 2011 |
Chapter 3: Collections |
|
Tuesday, September 20, 2011 |
Chapter 4: Linked Structures |
|
Tuesday, September 27, 2011 |
Chapter 5: Queues |
|
Tuesday, October 04, 2011 |
Chapter 6: Lists |
|
Tuesday, October 11, 2011 |
Midterm |
|
Tuesday, October 18, 2011 |
Chapter 8: Sorting and Searching |
|
Tuesday, October 25, 2011 |
Chapter 9: Trees |
|
Tuesday, November 01, 2011 |
Chapter 10: Binary Search Trees |
|
Tuesday, November 08, 2011 |
Chapter 11: Priority Queues and Heaps |
|
Tuesday, November 15, 2011 |
Chapter 13: Graphs |
|
Tuesday, November 22, 2011 |
Chapter 14: Hashing |
|
Tuesday, November 29, 2011 |
Thanksgiving Break |
|
Tuesday, December 06, 2011 |
Chapter 15: Sets and Maps |
|
Tuesday, December 13, 2011 |
Final Exam |