IBCS2 - 1213 - October

From WLCS

Wednesday (10/31/12)

  • Missing Linked List Demos
  • Criteria for Success due Friday (11/2/12)
  • Complete it today! Use Google Docs! Be sure to go through the outline and rubric!

Monday (10/29/12)

  • Hurricane Sandy

Thursday (10/25/12)

  • No 1st Quarter Exam, but we'll have a comprehensive exam in November
  • Criteria for Success due Friday (11/2/12)
    • How many specific problems did you mention in your A1: Problem Analysis? (should have at least 5)
    • Problem -> Goal Table (Open up a Google Doc and create a table with 2 columns)
    • Media:CriterionA2_criteriaforSuccess.doc due Friday (11/2/12)
  • Demo Linked List to Mr. Bui using Media:LinkedListTestMain.java

Tuesday (10/23/12)

Friday (10/19/12)

Warmup:

  • Node References Quiz 2

Agenda:

  • IDT Programming Contest
    • Design contest - given a problem scenario, create the solution
    • Teams of 2-3 people
    • Runs from early December to mid February
    • Prizes for students and schools
  • Complete and demo Media:DynamicQueue.java
  • Introduction to Linked List
    • Linked List JavaDoc
    • Download and complete Media:LinkedList.java
    • Attributes: first, last, size
    • Constructors: default
    • Methods: listed in the file above
    • Create your own main that tests out each of the Linked Lists's methods

Wednesday (10/17/12)

Warmup:

  • Draw the memory diagram for the following code:
Node top = null;
top = new Node(20);
Node bottom = top;
top.next = new Node(12);
bottom = bottom.next;
bottom.next = new Node(13);
bottom.next.next = null;

Agenda:

  • Demo Media:DynamicStack.java
  • Review Dynamic Queue
    • Memory diagrams for each method
    • Begin/Starting scenarios for each method
    • Draw the before-and-after pictures for adding a Node to an empty Queue (be sure to use head and tail!)
    • Draw the before and after pictures for adding a Node to a non-empty Queue
    • Draw the before-and-after pictures for removing a Node from an empty Queue
    • Draw the before and after pictures for removing a Node from a non-empty Queue
  • Complete and demo Media:DynamicQueue.java

Homework:

Monday (10/15/12)

Warmup:

  • Draw the memory diagram for the following code:
Node x = new Node();
x.num = 5;
Node y = new Node();
y.num = 8;
y.next = x;
x.next = null;

Agenda:

  • Node references practice
    1. Pair up
    2. Each person should type up an example main that uses Nodes
    3. Each person should then draw the memory diagram of the other person's code
    4. Repeat!
  • Everybody must be an expert using Nodes and references
  • Node Quiz
  • Static vs. Dynamic
  • Dynamically-sized Stacks
    • Stack scenarios and Before-&-After pictures
      1. What are the possible scenarios?
      2. What does the picture look like Before?
      3. What does the picture look like After?
    • Create a new class called DynamicStack
    • What attribute must we keep track of when we talk about stacks?
    • Create a Node reference for the most important stack attribute
    • Implement void push(int num) using Nodes.
      • push() should not return anything
      • push() creates a new Node with the num, and set the new Node's next reference to the top
      • Don't forget to update the top to be the new node!
    • Implement int pop() using Nodes
      • pop() removes the value on top of the stack, return it
      • pop() should also update the top
      • pop() returns null if the stack is empty
    • Implement top(), which should just return the value on top of the stack
      • If the stack is empty, then return some error code
    • Implement isEmpty() which returns true if the stack is empty, and false otherwise
    • Implement print() which should print your entire stack
    • TEST YOUR STACK USING MR. BUI'S ORIGINAL STACK MAIN OR YOUR OWN MAIN METHOD
      • Be sure to push A LOT of data to test the dynamic size
      • Also test popping A LOT of data to make sure it works too

Thursday (10/11/12)

  • What does FIFO stand for?
  • When would you want to use a queue? Give an example
  • Assume the following queue operations have occurred:
    1. Add "Hyde"
    2. Add "Bradfield"
    3. Add "Infantino"
    4. Remove
    5. Add "Silverman"
    6. Remove
    7. What is left in the queue?

Agenda:

Homework:

  • Node Quiz on Monday (10/15/12)

Tuesday (10/9/12)

Agenda:

Thursday (10/4/12)

Agenda:

Homework: