Date | Reading | Topic | Lab | Examples |
2/12 | Ch 11, HKK | Intro Ch 11.1-11.3 of HKK Lecture 1 (and lab 1) available on Moodle | - | add.asm - this program reads in 2 integers, adds them up
smaller.asm - this program reads in 2 integers, then prints the smaller number |
2/13 | - | - | Set up Running SLIME Demo Project 1 | - |
2/14 | Ch 11, HKK | Ch 11.3 - 1.4 of HKK Lecture 2 available on Moodle | - | smaller.asm - this program reads in 2 integers, then prints the smaller number
sum1ton.asm - this program reads in a positive integer n and prints out the sum range.asm - read in two numbers then print all integers between the two numbers inclusive fact.asm - computes the factorial from 1 up to a user input number, the iterative version |
2/15 | - | - | Project 1 | - |
2/16 | Ch 11, HKK | Ch 11.4 of HKK Lecture 3 available on Moodle | - | - |
2/19 | Ch 11, HKK | Ch 11.5 of HKK Lecture 4 available on Moodle | - | rfact.asm - computes the factorial from 1 up to a user input number, the recursive version
sumDigits.asm - sums the digits of a number, the recursive version writeDigitsStart.asm - writes each digital of a number, version 1 writeDigits.asm - writes each digital of a number, final version |
2/20 | - | - | Project 1 | - |
2/21 | Ch 1 | Ch 1.1 Lecture 5 available on Moodle | - | HelloWorld.java - your very first Java program
UseArgument.java - Java program that takes in user arguments IntOps.java - Java program illustrating integer operations |
2/22 | - | - | Project 1 | - |
2/23 | Ch 1 | Ch 1.2 Lecture 6 available on Moodle | - | flip.java - Java program Simulating a fair coin flip
coinflips.java - Java program Simulating n coin flips and calculates the fraction of heads TenHellos.java - Java program printing out "hello" 10 times n_coinflips.java - Java program Simulating multiple person, each doing n coin flips PrintDate.java - Java program printing days, month, year, demonstrating switch statements Prime.java - Java program taking a command-line argument N and prints out true if N is prime, and false otherwise Prime.java - Prime.java rewritten in different loop constructs |
2/26 | Ch 1 | Project 1 due (at the start of class) Ch 1.2 - 1.3 Lecture 7 available on Moodle | - | - |
2/27 | - | - | Project 2 | - |
2/28 | - | - | - | Project 2 (special arrangement due to professor Yu being in Japan) |
3/1 | - | - | Project 2 | - |
3/2 | - | - | - | Project 2 (special arrangement due to professor Yu being in Japan) |
3/5 | Ch 1 | Ch 1.3 Lecture 8 available on Moodle | - | bubble_sort.java - Java program filling an array full of random integers, then do a bubble sort. |
3/6 | Ch 1 | - | Labs canceled (due to snow) | - |
3/7 | Ch 1 | Ch 1.4 Lecture 9 available on Moodle | - | - |
3/8 | - | - | Ch 1.5 Lecture 10 available on Moodle (Special arrangement) | |
3/9 | Ch 1 | Catch up Lecture 11 available on Moodle | - | Matrix.java - Java program implementing Matrix operations.
Average.java - Java program reads in a sequence of real numbers, and computes their average; demonstrating StdIn BouncingBall.java - Java program implementing a 2-d bouncing ball, demonstrating StdDraw |
3/12 | Ch 2 | Project 2 due (at the start of class) Ch 2.1 Lecture 12 available on Moodle | - | - |
3/13 | - | - | Project 3 | - |
3/14 | Ch 2 | Ch 2.2 Lecture 13 available on Moodle | - | Primes.java - Java program printing all primes up to the number given as the 0th command argument.
bubbleSort_b.java - Java program implementing a bubble sort, using static methods. |
3/15 | - | - | Project 3 | - |
3/16 | - | Test 1 review Topics covered for written test # 1 Test 1 preparation slides available on Moodle | - | - |
3/19 | - | Written Test 1 | - | - |
3/20 | - | - | Programing Test 1 | |
3/21 | Ch 2 | Ch 2.3 Lecture 14 available on Moodle | - | Factorial.java - A class implementing the recursive version of factorial. |
3/22 | - | - | Project 3 | - |
3/23 | Ch 2 | Ch 2.3 Lecture 15 available on Moodle | - | Factorial.java - A class implementing the recursive version of factorial.
binarySearchTemplate.java - the template for binary search, for in-class exercise. binarySearch.java - the solution for binary search. |
3/26 | Ch 4 | Ch 4.1 Lecture 16 available on Moodle | - | Carpet_starter.java - Starter file to draw a Sierpinski carpet
Carpet.java - Draw a Sierpinski carpet, solution |
3/27 | - | - | Project 3 | |
3/28 | Ch 4 & notes | Project 3 due (at the start of class) Ch 4.1 & 9.6 notes Lecture 16 available on Moodle | - | - |
3/29 | - | - | Project 4 | - |
3/30 | - | Spring Break | - | - |
4/2 | - | Spring Break | - | - |
4/3 | - | Spring Break | - | - |
4/4 | - | Spring Break | - | - |
4/5 | - | Spring Break | - | - |
4/6 | - | Spring Break | - | - |
4/9 | notes | 9.6 notes Lecture 18 available on Moodle | - | TowerOfHanoi_starter.java - Starter file to solves the "tower of Hanoi" puzzle
MergeSort.java - Recursive version of merge sort TowerOfHanoi.java - Solves the "tower of Hanoi" puzzle, solution Fibonacci.java - Recursively solves the Fibonacci sequence, then solves it using Top Down DP (Memoization) and Bottom Up DP |
4/10 | - | - | Project 4 | - |
4/11 | notes | Project 4 due (at the start of class) Dynamic programing vs Memoization Lecture 19 available on Moodle | - |
LCS.java - Solves Longest Common Substring problem using dynamic programming (Max's code, from video 1)
LCS.java (version 2) - Solves Longest Common Substring problem using dynamic programming (the book's code, also from Max's video 2) Video 1 - Video # 1 of Max live-coding the LCS problem Video 2 - Video # 2 of Max live-coding the LCS problem (fine-tuning version to a version similar to that in the text book) |
4/12 | - | - | Project 5 | - |
4/13 | notes | Dynamic programing vs Memoization Lecture 20 available on Moodle | - | - |
4/16 | notes | LCS Lecture 21 available on Moodle | - | Choose.java - Recursively solves binomial coefficient, then solves it using Top Down DP (Memoization) and Bottom Up DP |
4/17 | - | - | Project 5 | |
4/18 | notes | LCS Lecture 22 available on Moodle | - | |
4/19 | - | - | Project 5 | |
4/20 | Ch 3 & 4 | Ch 3.1 Lecture 23 available on Moodle | - | - |
4/23 | Ch 3 | Ch 3.2 Lecture 24 available on Moodle | - | Charge.java - The instance class implement a Charge
ChargeClient.java - The client class using Charge IntegerStack.java - Class implementing integer stack |
4/24 | - | - | Project 5 | - |
4/25 | Ch 4 | Project 5 due (at the start of class) Ch 4.3 Lecture 25 available on Moodle | - | - |
4/26 | - | - | Project 6 | |
4/27 | notes | Test 2 review | - | - |
4/30 | - | Written Test 2 | - | - |
5/1 | - | - | Programing Test 2 | - |
5/2 | notes | Method Overloading & Interfaces Lecture 26 available on Moodle | - |
Employee.java - Super class implementing employee HourlyEmployee.java - Sub class implementing hourly employee SalariedEmployee.java - Sub class implementing salaried employee Date.java - class implementing date IntegerArrayStack.java - A derived class of the IntegerStack class |
5/3 | - | - | Project 6 | - |
5/4 | - | Inheritance & Polymorphism Lecture 27 available on Moodle | - | - |
5/7 | note | Java Generics Lecture 28 available on Moodle | - | Drawable.java - Interface drawable
Circle.java - Circle class extends interface drawable Square.java - Square class extends interface drawable TestDraw.java - Draw using Circle class and Square class |
5/8 | - | - | Project 6 | - |
5/9 | notes | Java Generics Lecture 29 available on Moodle | - | ArrayListExample.java - The ArrayList example |
5/10 | - | - | Project 6 | - |
5/11 | notes | Swing, UML and Source Code Lecture 30 available on Moodle | - | The structure example we had been working on is available on Moodle |
5/14 | notes | Project 6 due (at the start of class) Land of GACK Lecture 31 available on Moodle | - | - |
5/15 | - | - | Project 7 | - |
5/16 | - | Catch up Lecture 31 available on Moodle | - | - |
5/17 | - | - | Project 7 | - |
5/18 | - | - | Project 7 | - |
5/21 | - | Final exam practice questions are available on Moodle | Project 7 | - |
5/22 | - | - | Project 7 | - |
5/23 | - | Project 7 due (by 4pm no late projects will be accepted!!) Finishing up Project 7 | - | - |