* UNDER CONSTRUCTION *


Villanova University
CSC 1051 --- Data Structures and Algorithms I

Spring 2012


 
CLASS  SCHEDULE
Week
Topic
Homework
Other Links
Week 1
Course intro
Overview of Computer Science
ppt   pdf

Reading: Chapter 1    
Exercises: EX1.15-1.20
Take the online survey

Data representation
History of computing
Intro to Java
ppt   pdf
Reading: Chapter 1    
Exercises: EX1.1 - 13
Install jGrasp  on laptop
Helpdesk information
Week 2
Lab 1: Introduction to Java and the jGrasp programming environment
ppt    pdf
[lab 1 handout]

Reading: Section   2.1
Exercises:
PP 1.1, 1.2, 2.1
EX 2.2, 2.3, 2.5
Review lectures, lab, exercises for quiz on Wednesday
Project 1 - due Friday, 9/2/11
Variables, assignment, expressions
ppt   pdf
Reading: Sections 2.2-2.4   
Exercises: EX 2.6, 2.7, 2.8, 2.11
How to install jGrasp
Data conversions, interactive programs
ppt   pdf
Reading: Sections 2.5, 2.6   
Exercises: EX 2.10 and as many of PP 2.2-2.8 as you can
Review material on sections 2.1-2.5 for quiz next Wednesday
Optional: email me a 10 min quiz (by Tue 9/6/11 @11am)

Week 3
Labor day - no class
Lab 2: Algorithm design and Interactive Programs    
[lab 2 handout]
Reading: Review Section 2.6 Project 2 - due Monday, 9/12/11
Week 4 Lab 3: Conditionals
ppt    pdf
[lab 3 handout]
Reading: Sections 5.1, 5.2
Exercises: EX 5.1-5.5
9/16 Repetition - the while loop
ppt  pdf
Reading: Sections 5.4
Exercises: EX 5.7- 5.11
Project 3 - due Monday, 9/19/11
Week 5
9/19
Lab 4: Loops  
Review section 5.4
continue working on lab exercises
9/21 Lab 4: Loops (continued)
Project 4 - due Monday, 9/23/11
9/23 Graphics, Applets
ppt  pdf
Reading: Sections 2.7, 2.8, 2.9
Exercises: EX 2.13- 2.18
Week 6
9/26
Lab 5: Applets Project 5 - due Monday, 10/3/11
9/28 Classes and Objects
ppt  pdf
Reading: Sections 3.1-3.5
Exercises: EX 3.1-3.9
9/30 Classes and Objects (continued)
ppt  pdf
Week 7
10/3
Lab 6: The Java API   Review everything! Java API
10/5 Midterm exam Can you reverse-engineer this
value of pi applet?
We will solve this problem in class, but you should at least attempt to solve it on your own beforehand.

10/7 Approximating the value of pi Reading: Sections 3.9 - 3.11
Exercises: PP 3.9
*  
SPRING BREAK
Week 8
10/17
Lab 7: Graphical user interfaces
ppt
Reading: Chapters 3, 4
10/19 Class design, object design
method design
ppt   pdf
Reading: Chapter 4, Sections 4.1, 4.2, 4.4
Try also the Alice tutorials - see ppt for details
Account.java (simplified) Transactions.java (simplified)
Account.java Transactions.java
10/21 Class/object/method design continued Project 6 - due Friday, 10/28/11
Week 9
10/24, 10/26
Lab 8: Class & method design  
[lab 8 handout]
Reading: Chapter 4, Sections 4.1-4.5
Writing Methods Homework
BigA.java
BigLetters.java
BigLettersGUI.java
10/28 Classes & methods cont'd
Encapsulation and visibility modifiers
Graphical Objects
ppt    pdf
Reading: Chapter 4, Sections 4.1-4.6
Exercises: EX4.9-4.11
Week 10
10/31 
Lab 9: Graphical objects
[lab 9 handout]
Reading: Chapter 4, Section 4.6 Splat.java
SplatPanel.java
Circle.java
SmilingFace.java
SmilingFacePanel.java
11/2
Lab 9 continued Reading: Chapter 4, Section 4.6 Project 7 - due Friday 11/4/11
11/4 Selection Structures in Java
ppt
Reading: Chapter 6, Sections 6.1, 6.2
See ppt for exercises
Week 10
11/7
Lab 10: Selection structures
11/9 Repetition Structures
ppt  pdf
Reading: Chapter 6, Sections 6.3, 6.4, 6.5
See ppt for exercises
Week 11
11/14
11/16
Lab 11: Repetition Structures Reading: Chapter 6, Section 6.6
11/18 File input
ppt   pdf
Reading: Chapter 5, Section 5.5 Project 8 - due Wednesday, 11/30/11
Week 12
11/21
Lab 12: Primitive types, text file input
Week 13
11/28
 Lab 13: Introduction to arrays
 
Reading: Chapter 8, Sections 8.1, 8.2
11/30One-dimensional arrays
ppt   pdf
Reading: Chapter 8, Sections 8.1, 8.2
Exercises: EX 8.6- 8.9 and
Handout with more exercises
Project 9 - due Monday, 12/12/11
12/2Arrays of objects
ppt   pdf
Reading: Chapter 8, Section 8.3
Some more array exercises
12/2Extra Review Session
3:00 - 5:00 pm
Week 14
12/5-12/9
Lab 14: Arrays of objects
Reading: Chapter 8, Section 8.3
12/7Two dimensional arrays
ppt   pdf
Reading: Chapter 8, Section 8.6
12/9
12/9Extra Review Session
2:00-4:00 pm
Week 15
12/12 
Lab 15: Applet animation
(optional) review
 


12/13 Reading day
  • 12:30 - 2:30 Mendel 156 &158  Computer Science Senior Projects Pizza Party!
  • 1:30 - 3:00 Mendel G86 (our classroom)  Extra Review Session
  • 3:00 - 5:00pm Mendel 162C Office Hours
12/14Final Exam 11:30am-2:00pm