CSC301/CSC403: Data Structures (in Java) II (Spring 2014/2015)
James Riely

News
2015/03/30 15:53
Most of the material here is from last quarter. Updates will be rolled out with each lecture.
Class Links

Syllabus

D2L

Google group

(Mail the class) (Mail the prof)

Code examples

(Public javadoc) (Private javadoc)

Code examples ZIP

Online students

(Exams)

Tutors

Student Services

Textbook

Booksite

COS226 at Princeton

Algs4 on Youtube

Algs4 at Coursera

Princeton Slides

(Demos)
Eclipse

Getting Started

Eclipse IDE Tutorial

Debugging Tutorial

More Tutorials

Java

Java Resources

Java API

Algs4 API

IBM Intro to Java Course

Java Tutorial

MIT 6.005 [Search]

How to Think Like a Computer Scientist

(PDF) (See also here and here.)

Java for Python Programmers

(PDF) (See also here.)
Important Parts of the Java Tutorial

Java Language

Exceptions

Formatting Output

Formatting Numbers

Collections

More Java

Princeton Java Book

(First Chapter) (Creative Assignments)

COS126 at Princeton

GrepCode

Classmexer API

Algorithms

Foundations of Computer Science

A classic text.

Algorithm Visualizations

Java version

Sorting Visualizations

Sound of sorting

Open DSA

(under construction)
Schaffer's textbook
Lecture Materials
1. Symbol Tables (3.1, 3.5) [03/31-02]
2. Binary Search Trees (3.2) [04/07-09]
3. More BST [04/14-16]
4. Balanced Search Trees (3.3) [04/21-23]
5. Hash Tables (3.4) [04/28-30]
6. Midterm [05/05-07]

Midterm exam in class May 05, 2015

Homework

7. Undirected Graphs (4.1) [05/12-14]
8. Directed Graphs (4.2) [05/19-21]
9. String sorts (5.1) and Tries (5.2) [05/26-28]
10. Data Compression (5.5) [06/02-04]
11. Final exam [06/09]

Section 601 Final exam in class June 09, 2015, from 11:45pm-2:00pm (EARLY)

Section 602 Final exam in class June 09, 2015, from 2:45pm-5:00pm (EARLY)

Contact Hours
Class Hours: Tue/Thu 11:50am-1:20pm in Lewis 1110 [Section 601]
Tue/Thu 3:10pm-4:40pm in Lewis 1511 [Section 602]
Online, Anytime [Section 610]