teaching machines

CS 245 Lecture 24 – Binary Search Trees

Agenda what ?s design this isKitten binary search tree vs. sorted array implementing a BST Node isEmpty size get add delete a problem with BSTs: balance Design This Code HashEg.java BinarySearchTree.java Haiku

CS 245 Lecture 23 – Binary Search Trees

Agenda what ?s what does this do? what if we don’t override equals? what if we don’t override hashcode? hashes as a generalization of arrays hashes in C++ hashes in PHP hash/object duality in JavaScript binary search over linked structures the binary search tree What Does This Do? Hash Links Arrays as maps in PHP […]

CS 245 Lab 12 – Threaded Image Processing

First, if you have checkpoints left over from last lab, get them inspected during the first 15 minutes of this lab. Don’t forget to work in pairs! Where possible, please work with someone that you did not work with last week. The exchange of new ideas and perspectives is not an opportunity you want to […]

CS 245 Lecture 22 – Hashtables

Agenda what ?s turning keys into integers turning integers into indices handling collisions of indices chaining vs. linear probing finding word frequencies in Project Gutenberg TODO Read chapter 14 through section 14.2. 1/4 sheet. Lab exercise will be easier if you read this before then. Code Map.java Fastmap.java CountedWord.java FrequentWordFinder.java Haiku

CS 491 Lecture 22 – Working with Picasa Web

Agenda what ?s building a Picasa Web browser recover Exercise Today let’s make a browser for Picasa Web. The overarching design is this: The first screen presents a list of albums. When the user selects an album, the app transitions to a list of pictures in that album. When the user selects a picture, the […]

CS 245 Midterm

See the PDF.

CS 245 Preassignment 3 – due before November 28

See the PDF.

CS 245 Lecture 21 – The Problem of Lookup

Agenda what ?s what does this do? program this methods for mapping keys to values TODO Read section 7.2 and 7.3. 1/4 sheet. What Does This Do? Lookup We want to map keys to values: names to phone numbers (a phonebook), web addresses to IP addresses (DNS), terms to their definitions (dictionary), words to their […]

CS 245 Lab 11 – Maze Traversal

First, if you have checkpoints left over from last lab, get them inspected during the first 15 minutes of this lab. Don’t forget to work in pairs! Where possible, please work with someone that you did not work with last week. The exchange of new ideas and perspectives is not an opportunity you want to […]

CS 245 Lecture 20 – More Stack

Agenda what ?s is-a vs. has-a program this solve this postfix calculator searching the filesystem TODO Write a static method reverseString that accepts a String parameter and returns the reversed version. Use a stack instead of the more straightforward algorithm. 1/4 sheet. Program This Solve This Code Stack.java Postfix.java DiskSearcher.java Haiku

1 2 3 4 7