CSC 241 -- OUTLINE
Mohammadi
Summer 1996
Classes Reading
------- -------
I. Software life cycle. #1 C1,C2,
OOD and TDD. T1,T2
Revisit classes/objects/packages in Java.
Learn about pre/post conditions.
Discuss exception handling.
Learn to develop test case.
II. Develop simple java applets along with HTML #2,#3 C3,T3,T4
files that run them.
Discuss the stack and queue data structures.
Implement an integer stack with an array.
Discuss some applications.
Begin discussion on algorithm efficiency.
III.Recursion #4 ????
IV. Encapsulation+Inheritance #5,#6 ????
Discuss a class hierarchy for queues.
Show an abstract class for a queue.
Discuss dynamic space allocation with
variations of linked lists, single, double,
and circular kinds.
Show an array and a linked list
implementation of the abstract Queue.
V. Introduce algorithm analysis and the big-O #7 C6,T7,T8
notation.
Learn more about O(n2)) and O(n log n)
sorting techniques and compare them analytically
and empirically.
See a graphic illustration in Java.
VI. Check out a list class #8 C4,C5
Continue discussion on algorithm efficiency.
Use of lists in applications.
Check out some of the neat classes in Java.
More on applets.
(Note: Only lab+exam on July 24th, no lecture)
VII.Discuss binary trees. #9 C7
Show their implementation and application.
Evaluate their efficiency in searching and
updates.
VII.Discuss Hash tables . #10
Discuss interfaces.
Develop a keyed interface.
Implement as hash table and binary search tree.
Show applications.
T--The Java Programming Language
C--Concepts in Data Structures and Software Development
Examples for correct interpretation of the Reading column:
C1--means chapter 1 of Con. in Data ... book
T3--means chapter 3 of The Java ... book