CSC205::Object Oriented Programming and Data Structures::Fall 2017
(using the Java programming language)

[csc205 AZ license plate]

Assignments | Code | Handouts/Syllabus | Resources | Office Times | Email Me

#FinalAssessment: Tuesday, 12 December 2017, at 11:30am.
  WEEK#   WEEKLY LECTURE NOTES -- DESCRIPTION
Seventeen17 #FinalAssessment is Tuesday, 12 December 2017, at 11:30am. Attendance is required. [There is no class on Thursday.] Assignment(s): All assignments have been assigned.
Sixteen16 Finish quick sort. Introduction to 2-3-4 trees. Assignment(s): All assignments have been assigned.
Fifteen15 Review BST.java. RPN calculator. Quick sort. Assignment(s): All assignments have been assigned. Code QuickSort.java
Fourteen14 Continue with trees (binary search trees; tree traversals). Expression trees. Assignment(s): All assignments have been assigned. Code Trees.java | BST.java {output}
Thirteen13 Introduction to trees. Assignment(s): [program] #CountingSort and [program] #RadixSort and [assessment] #assessment0 and [assessment] #assessment1 and [program] #BST and [essay] #ComputingEthics Code StringsTree.java {output} | BST.java {output}
Twelve12 Continue with linked-lists. Searching and sorting. Assignment(s): [program] #MyDoublyLinkedList and [assessment] #AssessmentQuestions Code DoublyLinkedList.java | Bsearch.java | BubbleSort.java | InsertionSort.java {simpler code) | MergeSort.java | AbstractSorter.java | Comparable.java | Sortable.java | CountingSort.java | RadixSort.java
Eleven11 Linked-lists. Searching (linear and binary). Introduction to sorting. Assignment(s): [program] #MyLinkedList Code SinglyLinkedList.java {OOP version}
Ten10 Finish queues. Linked-Lists. Sorting and searching. Assignment(s): [assessment] #Timer and [program] #Q Code Q.java | FootNotes.java | (footnotes.in.txt) | CircularArrayQ.java | Buffer.java | PriorityQueue.java
Nine9 Data structures: set, stack, and queue. Assignment(s): #MySet Code [stack] NumberSystemStack.java | Stack.java | ParenChecker.java | Stack2.java | Queue.java
Eight8 Continue with multi-dimensional arrays. The list data structure. Assignment(s): [program] #IntList and [program] #Pi Code [multi-dimensional arrays] TwoDimensionalArrays.java | BYTES.java | ThreeDimensionalArray.java [memory/heap/stack] Memory.java [static main() methods] Main.java | [list] GoofyIntList.java
Seven7 Continue with recursion. Continue with interfaces. Introduction the multi-dimensional arrays. Introduce memory usage. Assignment(s): [program] #RomanNumeral Code AboutThis.java | [recursion continued] Reverse.java | Fibonacci.java | GCD.java {GCDverbose.java} [interfaces] InterfaceExample.java | InterfaceEG.java | {I_ExitStatus.java | TestI_ExitStatus.java} TestSerializable.java | {TestClone.java | CloneableEG.java} CSC205_Containers
Six6 Finish exceptions. Recursion. Assignment(s): #PasswordGiver Code [finish] TestExceptions.java | Xception.java [recursion] Factorial.java | Countdown.java | Power.java | PrintLD.java
Five5 Continue learning about OOP. Continue with interfaces using #GuessingGame. Introduction the exceptions. Assignment(s): [program] #WoodallNumbers and [program] #RecursionPlay Code [finish] Robot2.java | Exceptions.java | TestExceptions.java
Four4 Continue with arrays. Introduction to exceptions. Introduction to recursion. Introduction to interfaces. Assignment(s): [program] [program] #ValleyPeak and [program] #BitOperators Code XYZ.java | A.java (arrays) | Robot.java
Three3 Review arrays (array of primitive data, array of objects, passing arrays to methods, using array parameters, returning arrays from methods). Introduction to class Vector. Assignment(s): #GuessingGame Code HelloWorldOO.java | Import.java | PolyNumber.java
Two2 Continue review of course competencies one and two with emphasis on classes and OOP. Review arrays. Assignment(s): [assessment] #VintonCerf and [program] #ExtremelyOddNumbers Code HelloGoodbyeWorld.java | Rot13.java
One1 Review the syllabus. Review course competencies one and two. Assignment(s): [assessment] #email and [program] #MakeHelloWorld and [assessment] #BrianKernighan Handout(s): CSC205 Syllabus and About CSC205 and How To Submit Assignments Code: HelloWorld.java
Zero0 Start date: Tuesday, 22 August 2017.