Difference between revisions of "CSC212 Schedule 2014"

From dftwiki3
Jump to: navigation, search
( )
( )
Line 632: Line 632:
 
::{| class="mw-collapsible " style="width:100%" border="1"
 
::{| class="mw-collapsible " style="width:100%" border="1"
 
|- style="background:#dddddd;"
 
|- style="background:#dddddd;"
|width="60%"| '''Topics'''  
+
|width="60%"| '''Topics''' HashMaps & HashSets
 
|width="15%"| '''Lab/Hw'''
 
|width="15%"| '''Lab/Hw'''
 
|width="25%"| '''Reading'''  
 
|width="25%"| '''Reading'''  

Revision as of 11:25, 9 December 2014

TA Hours | WHITE





Prof and TAs

Dominique Thiébaut email
Dept. Computer Science
Ford Hall, 356.
Telephone: 3854
Office hours: M4:30-5:30, T4-5, W1-4.

 

Teaching Assistants

  • Wen, Xuan,
  • Upreti, Angela, Thursday afternoon lab
  • Galen Long
  • Pratistha Battharai



To see when and where TAs are available this week, click here.


Weekly Schedule



 


Week 1 Sept 4    


Topics: beowulf2, emacs, Lab 1 Lab/Hw Reading
  • The use of software tools/technology in the movie The Social Network.

This section is only visible to computers located at Smith College

  • Introduction to the tools used this semester:
    • beowulf2
    • ssh
    • emacs
    • javac compiler
  • Hands on experience with the tools: Lab 1

Lab 1

  • Read Chapter 1 in HF Java. Learn about the idea of a Virtual Machine, of types, of computation with Java. The idea of a Java program being a class with at least one method called main().




 


Week 2 Sept 9, 11    


Topics: Java, Classes, Objects, Arrays Lab/Hw Reading
  • Tuesday 9/9

    • 10 minutes in the Linux World
      • ssh to lecturne
      • the touch command
      • review cat, ls, rm
      • new: mkdir, w


  • Thursday 9/11



    • Hands on arrays, classes and objects in Java: Lab 3
VideoLogo.png




 


Week 3 Sept 16, 18    


Topics: Data Structures, first look at lists, Javadocs Lab/Hw Reading
  • Tuesday, Sept. 16


  • Thursday, Sept. 18

VideoLogo.png
  • Review of the code.
  • Add an index( n ) and a rindex( n ) methods. index() returns the index of the leftmost occurrence of an integer n in the list. rindex() returns the rightmost index. Both return -1 if not found.
  • Private versus Public
  • Mutators & Accessors
  • Java docs. Formatting a program for javadoc. Generating the javadoc for a program.
  • Chapters 2 to 6 in Head First Java.
  • A good reference on Javadoc can be found on Oracle's Web Site (Oracle now owns Java).




 


Week 4 Sept 23, 25    


Topics: List of pairs, Exceptions, Lab/Hw Reading
  • Tuesday, Sept. 23


  • Thursday, Sept. 25

VideoLogo.png


VideoLogo.png
  • Section 1.5 in Drozdek.
  • You may want to start reading ahead Chapter 3 in Drozdek.




 


Week 5 Sept 30, Oct 2    


Topics: Vectors, Time Complexity, Linked Lists, Queues and Stacks Lab/Hw Reading

Tuesday, Sept. 30


  • Pep talk about good approaches to programming
  • 10 minutes of Linux:
  • Redirection with < and >
  • Review of Vectors
  • A first approach to understanding time complexity

Thursday, Oct. 2nd


  • Linked Lists (video of basic operations)
VideoLogo.png
  • Chapter 3 in Drozdek




 


Week 6 Oct 7, 9    


Topics: RPN & stacks, Eclipse, Complexity Lab/Hw Reading

Tuesday, Oct 7



Thursday, Oct 9


  • Chapter 2 in Drozdek
  • A video class on algorithmic complexity from CoderIsland.com (first 35 min.):
    VideoLogo.png



 


Week 7 Fall Break, Oct 16=Midterm Exam    


Topics: Programming the Tcsh, Midterm Lab/Hw Reading
  • Thursday

  • Lab #8 (No submission to Moodle required this week)



 


Week 8 Oct 21, 23    


Topics: Recursive Algorithms, 2D Maze, N-Queens Lab/Hw Reading
  • Tuesday, Oct. 21

  • Evaluating the amortized time complexity of the insert operation in a vector or ArrayList
  • Recursive Algorithms
  • Basics of Recursion
  • Examples
  • Evaluating the time complexity of binary search: average case, best case, worst case.

  • Thursday, Oct. 23

  • Recursive RPN Evaluator (will be fully developed in lab)
  • Evaluating the time complexity of factorial
  • Revisiting the recursive Fibonacci solution: Removing the tail recursion. How much does it help?
  • Exploring a 2D Maze
  • The N-Queens problem



 


Week 9 Oct 28, 30    


Topics: Trees, BSTs, Heaps Lab/Hw Reading
  • Tuesday Oct. 28


  • Thursday Oct. 30

  • Continue with BSTs
  • BreadthFirst Search
  • Depth-First Search: inOrder, preOrder, postOrder
  • Insertion in a BST
  • Deletion from a BST
  • Balancing a Tree (the whole tree, not adaptively)
  • (Class Notes 2: BSTs)
  • Chapter 6 in Drozdek.



 


Week 10 Nov 4 (Otelia Cromwell)    


Topics: BSTs, Heaps Lab/Hw Reading
  • Tuesday, Nov 4

  • Complexity of BST operations
  • Self-Balancing Trees
  • Heaps
  • (Class Notes)

  • Thursday, Nov 6: Otelia Cromwell Day
  • No class
  • No lab, but you can do an optional lab on your own... See Lab 11 for details.



 


Week 11 Nov 11, 13    


Topics Regular Expressions, Sorting, Graphs Lab/Hw Reading
  • Tuesday, Nov. 11


  • Thursday, Nov. 13

  • Chapter 9 in Drozdek, on Sorting.



 


Week 12 Nov 18, 20    


Topics DFS, BFS, Dijkstra, Floyd Lab/Hw Reading
  • Tuesday


  • Thursday

  • Chapter 8 in Drozdek



 


Week 13 Nov 25, Thanksgiving    


Topics Graphs, Union-Find Lab/Hw Reading
  • Tuesday, 11/25

  • A bit of Hollywood culture...
  • More graphs!
  • Detecting Cycles
  • in undirected graphs
  • in directed graphs
  • Union-Find

  • Thursday, 11/27

  • Chapter 8 in Drozdek



 


Week 14 Dec 2, 4.    


Topics GUI & Model-View-Controller Lab/Hw Reading
  • Tuesday, Dec. 2

  • Finish Lab 14 (45 minutes)
  • Graphical User Interface (GUI)

  • Thursday, Dec. 4



 


Week 15 Dec 9, 11    


Topics HashMaps & HashSets Lab/Hw Reading
  • Tuesday, 12/9


  • Thursday, 12/11

  • TBA
  • Chapter 10 in Drozdek on HashSets and HashMaps



Links and Resources


Java Programs



Java Documentation



Algorithm Visualization



Processing and Java






...