CS 112 - Introduction to CS II - Summer I, 2015


[Resources | Staff Contact Information |Course Schedule ]


Resources

Staff Contact Information

Resources

Instructor

Wayne Snyder
      Email: waysnyder@gmail.com

     Office: MCS 147
     Office Hours: M - W 7-9pm
      Cell Phone: 617 - 966 - (210 + 41) (email vastly preferred)

Teaching Fellow:

TBA



Course Schedule

Back to Top

Lecture
Date
Lecture Topic
Readings
Lecture Slides and Code Examples
Homeworks and Tests
Labs
1
T 5/19

Overview of Course & Course Policies; Motivational Lecture: Two algorithms for searching an array---algorithm, implementation, analysis, and experiments

Syllabus;

Lecture01.pdf

 

   
2
W 5/20

Introduction to Java: compilation vs interpretation, expression-oriented vs statement-oriented, and types; increment and decrement operators, control structures; break and continue;

Array type

Read Ch. 1 of Java; in Ch. 2 read about expressions; increment/decrement operators (++ and --); control structures (emphasize if, while, and for); also read about the array data type

 

Used the board and Dr. Java!

 

HW01: HTML

HW01 Part A Solutions: HTML

 
R 5/21 Defining a static class; The words static, public, & private; Defining and using methods; Local variables vs fields; Scope of variables and fields; Defining objects (non-static classes); Object-Oriented design

Please read about "break," "continue," and "return" on pp.52-54, and then read the sections on "Methods" and on "Classes" and "Objects" which starts on p.64 and read through to p.69.

Then go back and read about local variables in the section starting on p. 45.

Used the board and Dr. Java!

Homework Two: HTML

HW02 Part A Solutions: HTML

 
3 T 5/26     Used the board and Dr. Java!    
4 W 5/27

Stack and Queues;

 

 

Read first subsection of "Reference Types" on "Copying Objects and Arrays";

Optional: Read about "Ring Buffers" on Wikipedia

Used the board and Dr. Java!

Collection.java (must complete for HW 03)

Collection2.java (Ditto)

Stack.java (example for HW03)

Queue.java (must complete for HW 03)

MaxQueue.java (must complete for HW 03)

 
5 R 5/28 Reference types: How are the variables for arrays and objects different than for primitive types?   Used the board!    
6 M 6/1

Implementing Queues with Ring Buffers.

Generic Data Types

 

Lecture on Ring Buffer Queues and Deques and Priority Queues: PDF

Lecture on Java Generic Data Types: PDF

HW04: HTML

DequeGradingClient.java

PQGradingClient.java

HW04 Part A Solutions: HTML

 
7 T 6/2 Introduction to Sorting and Asymptotic Analysis   Lectures on Sorting, Asymptotic Analysis, and Mergesort: PDF    
8 W 6/3 Asymptotic Analysis and Sorting Continued   (same lecture continued)    
9 R 6/4 Sorting Concluded   Lecture on Quicksort etc: PDF    
10 M 6/8 MIDTERM

Sample Midterm (shorter than usual, yours will have 7 problems): PDF

Midterm Solution: PDF

HW 05: HTML

HW 05 Solution: HTML

 
11 T 6/9 Reference types on steroids: Linked Lists   Linked List Lecture 1: PDF    
12 W 6/10 Linked Lists and Iteration Reading: Iteration and LLs Linked List Lecture 2: PDF    
13 R 6/11 Linked Lists and Recursion Reading: Recursion and LLs  

HW 06: HTML

HW 06 Solution: HTML

 
14 M 6/15 Exceptions; Binary Search Trees: basic definitions, search

Reading on Exceptions: HTML

PPT slides on Exceptions: PDF

TestExceptions.java

Reading on BSTs: 1 or 2 and my Notes on BST Algorithms

     
15 T 6/16 BSTs: insertion, deletion, performance of BSTs   Lecture on BSTs (including deletion): PDF    
16 W 6/17 Balanced Trees: 2-3 Trees   Lecture on Balanced Trees: PDF    
17 R 6/18 Binary Heaps   Binary Heap Code: JAVA

HW 07: HTML

HW 07 Solution: HTML

 
18 M 6/22 Hash Tables: Separate Chaining

Readings: 1, 2

How to Implement a Hash Table in Five Minutes or Less: HTML

 

   
19 T 6/23 Hash Tables: Linear Probing        
20 W 6/24 Game Playing by Computer        
22 R 6/25 FINAL EXAM        
23 F 6/26       Last homework due!  
             
             
             
             
             
             
             
             
             
             
             

Back to Top