New Policies:
- Contract to Learn:
The material is hard but important.
It deeply saddens me when a third of the class does not learn
the material sufficiently to pass.
I will do everything in my power to help you learn this
material.
I request that you do everything in your power.
- Tough Love:
Last year, I threatened them every day. (No more belling)
They performed better than ever before!
And my course evaluations were better.
- A unit Test every other week:
Every year almost everyone bombs the midterm.
They just don't get that this stuff is hard and that they need to
study.
They work 50 hrs every week on their programming course and
leave this course until the night before the midterm.
This time we will have a mini midterm every two weeks.
- TA Office Hours:
I think it is important for people to not feel isolated with the
material.
Some, however, may feel intimidated to talk to the professor.
I have encouraged for the students to teach each other.
This term we will provide three hours a week of contact hours
with the TA.
- No Marked Assignments:
Because we are spending all of the TA resources on office hours,
they will not have time to mark the assignments.
It is still very important to do the assignments.
- Trust:
People do have a hard time getting the material. But then a light
goes off and they get it. I always feel that it is a matter of them
trusting the steps and quite frankly trusting me.
- Humbled: I find that
people who are cocky and think they know everything themselves have
the hardest time. Not getting a few questions can be humbling. Then
they do better. This is why I want more tests early.
Learn:
- Read the book.
- Go to class.
- Ask lots of question.
Talk to your friends. Talk to the TA and Jeff
- Study the slides.
- Learn the steps.
- Do the assignments, practice tests, tests, and exam.
5 Units: (See syllabus )
- 0) Relevant Math
- 1) Loop Invariants and Iterative algorithms
- 2) Recursion
- 3) Relevant Math & Graph Search
- 4) Greedy Algorithms
- 5) Dynamic Programming
- extra) NP and other harder things.
Steps:
- One for each of the five units
(See Steps.)
- A few page document containing the most important concepts in this
unit.
- Study the them. Understand the them. Memorize the them.
- You will not be able to pass this course without knowing and
understanding these.
- The steps provided must be followed on all
assignments and tests in this course.
- Do not believe that because you
know the material, you can answer the questions in your own way.
- Though this material is necessary, it does not contain everything
that you need. You must read the book, go to class, review the slides,
and ask lots of question.
Assignments:
- One for each of the five units
(See Assignments.)
- Not to be handed in or marked
- A subset of the questions in the book
- Work hard on solving these questions on your own.
- Only after this should you read the posted solutions.
- Don't cheat by looking at these answers prematurely.
- The questions on the tests will be different. But the answers will be
surprisingly close.
- The steps provided must be followed on all assignments.
Practice Tests:
- One for each of the five units
(See Practice Tests.)
- The goal of this exercises is to be guided through using the steps.
- It can either be done during a TA session or on your own.
- Format: Attempt the steps on your own. If you don't know how to
do a step, the simply write down what the steps are. After a while,
the TA will take up the first step. The class should chat about what
answers they got and their relative merits. (If you are doing this at
home, then look at the answer for only this step. Don't cheat by
looking at more.) After the discussion, continue working on the
steps. If you now see that the answers you had were wrong, then fix
them. After a while, the TA will takes up the second step. (Or at
home you look at the answer for only this step.) Then you continue
from this second step... and so on.
- You MUST hand in what you do at the beginning of the actual
unit test.
- The TA will glance at it for 2sec and see that it is
done. Yes/Half/No
- Would it be horrible to say:
Zero marks if you do it, loose 4% of their final mark if you don't.
Unit Tests:
- Every two weeks
- Dates
- The unit test are designed to last 1/2 hr. During the summer they
took 2 hr. Likely we can't schedule this. This might not be a bad
thing. People will just have to write their first thoughts and not
panic. They might at least be more internally consistent ie answer
for one step does not conflict with that for another.
- The steps provided must be followed on all tests.
- Solutions
Exam:
- Final exam. It will be a repeat of the five unit tests.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.