CIS223 Topics
Room
311, Wachman Hall, 1-1913, koffman@cis.temple.edu
-
Week
1, class 1, Power Point Presentation, revised 1/24/2000
-
Week 1, some sample classes
-
Class
Accumulator.java 1/21/2001
-
Class
LoopTestApp.java 1/21/2001
-
Description
of IO methods (IOMethods.doc)
-
Class
IO.java of package myIO - revised 10/5/00
-
Class
TwoNumbers.java
-
Class
TwoNumbersApp.java
-
Class
Fraction.java 1/21/2001
-
Class
FractionApp.java 1/21/2001
-
Class
EditableString.java, 1/24/2001
-
Class
TextEditor.java 1/24/2001
-
Some
zip files you can download - all files for a project
-
Fraction.zip
-
TwoNumbers.zip
-
LoopTest.zip
-
Week
2, class 1 word file - arrays - revised 1/21/2001
-
Week
2, class 2, Vectors, Stack, multi-dim arrays - 1/21/2001
-
class
VectorTest.java 1/25/2001
-
A
note about casting - 9/18/2000
-
ArrayCubes.zip
-
PascalTriangle.zip
-
StackDemo.zip
-
StackDemo2.zip
with String and Integer objects in a stack - revised 9/21/2000
-
Week
3, Class 1, Object Oriented Concepts in Java - revised 1/31/2001
-
Week
3, Class 2, Polymorphism - 9/25/00
-
Rectangles.zip
- zip file with rectangles program
-
Click
here to run applet for rectangles display
-
Comparable.zip
- zip file to test Comparable interface
-
Week
4, Class 1, Quadratic sorts and shell sort - revised 2/7/2001
-
Week
5, class 1 and 2, Merge sort and Quicksort - revised 2/7/2001
-
Comparing
sort methods with trace of quicksort - click to run applet - revised
2/19/2001
-
Week
6, class 1, applets and GUIs - revised 10/9/00
-
Kilometers
to miles conversion zip file
-
kilometers
to miles applet - click to run it.
-
Week
6, class 2, week 7, classs 1, stacks and queues - revised 3/14/01 - includes
queues
-
Stack
List ADT superzip file
-
Week 7, class 2
-
evaluating postfix
-
converting infix to postfix and evaluating infix with 2 stacks - calculator
assignment
-
applet
-
run
the applet
-
Week
8, class 2 - AWT and Swing Classes
-
Source
code for applet with a button, textfield, and checkbox. The applet listens
-
to
action events in the text field and the button, the inner class MyItemListener
listens for item events in the
-
checkbox.
Setting or resetting the checkbox generates an item event.
-
Click
to run this applet. The stop button toggles between stop and go,
-
the
happy check box can be set and unset -- changing the message that is displayed.
-
When
you type in a number and press return that number doubles, keep pressing
return
-
and
it keeps doubling. Replace it with another number to start over again.
-
Week
9, hashing - modified November 8
-
Week
10 - modified April 10, 2000, binary trees
-
Week 11,
12 AVL trees - modified April 17, 2000
-
Week
13 - B trees
-
Week 14
- Graphs
-
Midsemester
exam 1
-
Midsemester
exam 2
-
Sample Final
exam
-
Sample
final exam type questions and answers
Labs
Lab 1 due week of 1/29 - see below for assignment - files are under week
1 lectures.
Lab 2 due week of 2/5 - see below for assignment - files are under week
2 lectures.
-
Bulding
a JBuilder project - modified 9/11/00
-
Lab
1 assignment
-
Common
Errors in Lab 1
-
Lab
2 assignment
-
Hints for Lab2 find operation
-
You need to implement a nested if statement for the
find or search option that has the following form:
-
if the last operation was not a find operation
-
ask user for a target string and try to find it starting
at position 0
-
else
-
ask the user whether he/she wants to find the next occurrence
of the target string from last time
-
if the answer is no
-
ask the user for a target string and
try to find it starting at position 0
-
else
-
find the next occurrence of
the target string starting at the position of the
-
last occurrence
+ 1.
Lab 3 - banking assignment. Lab due friday, 2/16 or 2/19.
-
Description
of assignment and classes
-
zip
file of different Bank classes - Bank.ZIP (SUPERZIP) revised 1/30/2001
-
Account.java
- modified 2/12/01
-
Adult.java
-
Bank.java
- modified 2/12/01
-
BankApp.java
-
CheckingAccount.java
- modified 2/12/01
-
Customer.java
-
SavingsAccount.java
- modified 2/12/01
-
Senior.java
-
Transaction.java
Lab 4 - Sorting assignment -- due Feb. 28 and March 14
-
Sorting
assignment description - See revised description and due dates!!! - 2/27/2001
-
Some
stuff about the Comparable interface and how to use it.
-
ArrayOperations.java
-
Sorts.java
-
Timer.java
Lab 5 - Expression Evaluation - Due March 28
Implement one of the 2 algorithms for expression evaluation discussed in
class. You can either
do expression evaluation in 2 passes - create a postfix expression
string and then evaluate it, or do it in
one pass using an operand and operator stack. Use integers only as
operands and allow multi-digit
integers. You should be able to handle parentheses. Your input should
be the string to evaluate. Your
output should be its value. You should have a
method evaluate() and a method precedence() in the calculator class
as
well as processOperator() and processDigit(). Method evaluate returns
the
result when a particular operator is applied (char operator, int left
and
int right are arguments). Method precedence returns the precedence
(an
integer) for its character operand. For extra credit, do this as an
applet using the applet code
provided in the notes.
Lab 6 - Priority Queue Lab - Due April 5 - Correction - 15 points for linked
list
implementation, 10 points for vector implementation, 20 for both.
-
Lab
description
-
Some classes for
Priority Queue: interface Prioritizable, class MyData, class PQOperations,
Vector Priority queue
-
Code
for Priority Queue as a Linked List
-
Class
PriorQueueNode
Lab 7- Hashing Lab - Due April 17
-
Implement hashing using either a hash table (array) or through bucket hashing.
You should be able to store any object that
implements the Hashable interface in your hash table. Use a String
of form last name, first name for the key. You should
have a menu-driven loop in your driver method with options: insert,
retrieve, replace, delete, and quit.
Tree Lab - due May 3, 2001 - revised 4/26
Complete the binary search tree class. Write and test methods for insertion,
deletion, retrieve, and search using a menu. You should be able to
store
data of any class that implements the Comparable interface in your
tree
(for example, MyData, Friend, Integer, String). Demonstrate that you
class works with 2 different
types of class data - one that uses a string as a key and one that
uses an integer key.
You should not store data of different types in the same tree. You
can either create
two tree objects, one for storing data of one type and one for storing
data of another
type. Or you can just modify your driver program so that it reads data
of a different type
during a second run.
Final Exam - Thursday, May 3 (8:30-10:30 or 11 - 1) depending on
your section.
Covers: trees, expressions in trees, search trees, AVL trees, B-trees,
Introduction to AWT and Swing (1st 13 pages of
notes - but lightly). Also, there will be progamming exercises involving
earlier data types such as vectors, stacks,
and queues. I will be available for questions and meet for a review
in the classroom on Tuesday, May 1, at 2 PM.