The main thing in senior seminar is to review CS classes, and hopefully
show a bit how they relate to each other, and become very brilliant so you
will all score well on the Major Field Test. Taking the MFT is part of
this class.
We will meet on Thurday chapel time.
Each week we will review and discuss a particular topic, and work problems.
We will also look over the problems on the MFT practice sheet
from the ETS web site.
There are only a few of these, so we'll work in a few more problems, here,
there and everywhere.
Here is a tentative list of topics.
Trees:
Review material from CSc 216. There is some fine online material at
Princeton on
binary trees and
balanced trees.
Have a look at the exercises at the ends of the these pages and see if
you can do them. We'll probably try some tree updates on the board,
and look at problem 2 from the
practice sheet.
There is an interesting BST
(and AVL) animation here.
Sorting algorithms, and searching other than binary trees: binary search
and hashing. For review, we can again mooch from Princeton
for
sorting, and
hashing,
too.
Look at the exercises for elementary, merge and quick sorts.
We'll look at some of those and #7 on the
practice sheet.
Programming and Program Semantics:
Of the
practice problem., this would take
in 1, 3, 6 and 11, which
we'll discuss. Questions 3, 4 and 12 on the
second practice sheet are also relevant. This is a broad
topic, which includes general programming, data structure implementation
and some PLS topics, such as type systems and memory use.
Here are a
few others to chew on.
Grammars, Regular Expressions and Automata.
Princeton has a
good
discussion of regular languages and expressions. This has many
good exercises, perhaps you might look at
Exercise 5 (several parts), and Web Exercises 1–7, 9, 25–27,
27–43, 45. The
practice sheet has
questions 5 and 14,
We'll spend less time on Grammars, and only context-free ones.
You might look at these
notes from a course at Stanford. Some standard
CFG problems are to write CFGs to produce languages
- where every string is of the form aibjci.
Note that the first and last groups are the same size.
- where every string is of the form ai+jbicj.
Similar to the last one, but this time the first group's
length is the
total of the lengths of the last two.
- of a, ( and ) where the parens are balanced.
Both nesting and sequence allowed.
To make it slightly more interesting, add the rule that
no set of parens can be empty.
- of a and b, where
every string contains the same number of a and b,
in any order. (Not like the 0n1n
problem from the notes, since the characters need not
be grouped.)
Voting Machine Security
Fall Break
Discrete Math and Combinatorics. We have #9 From the
practice sheet, and
this set.
Perhaps I'll come up with more, and
will always happily take suggestions.
Computer Organization.
There question 4 from
practice sheet, and 5 from
the
second practice sheet. I'll
mention these, and talk a bit more about
memory cache. I'll review some about CPUs, and also discuss some of
the CPU performance problems linked
here and
here.
(And anything else that looks good if there is time.)
Operating Systems: We'll discuss questions 12 and 13 from
practice sheet,
discuss virtual memory and
run some replacement algorithms, and whatever else seems to belong.
I will not doubt make use of some of my posted 422 material.
Social Media and Society