CS900-3a

A Multifaceted Introduction to Computer Science

Brown University, Summer 2003

June 30th – July 17th

10:00 – 11:30 AM, CIT 165

1:00 – 5:00 PM, Sunlab CIT 143

Instructor: Thomas Hofmann

Office Hours: daily 11:30-12:00, CIT 505

 

Graduate TAs: Lijuan Cai, Ioannis Tsochantardis

 

 

 

 

Lecture

Lab

Week 1: 06/30 – 07/04

 

 

Day 01

Monday 06/30

Computation & Programming

[html] [pdf]

Tutorial: First time login

Programming environment

[html]

Day 02

Tuesday 07/01

Doing the Math

Mathematical and User-defined Functions

[html] [pdf]

Functions and Formulae

[pdf]

Day 03

Wednesday 07/02

The Logic of Things

Boolean logic, logical expressions, circuits, conditional statements

[html] [pdf]

Mathematics and Logic

[pdf]

Day 04

Thursday 07/03

The Power of Repetition

Loops, and 1D Arrays

[html] [pdf]

Doing Things with Loops

[pdf]

Day 05

Friday 07/04

No class

No lab

 

 

 

Week 2: 07/07 – 07/11

 

 

Day 06

Monday 07/07

 

Image Processing

Digital images, image transformations, image filtering, 2D Arrays

[html]  [pdf]

Image processing

[pdf]

Day 07

Tuesday 07/08

 

Recursion & Deep Search

Recursive functions, depth first & breadth first search, games

[html]  [pdf]

Problem Solving with Recursion

[pdf]

Day 08

Wednesday 07/09

 

The Programmers World: Object & Classes

C++: classes, abstraction encapsulation, inheritance

[html]  [pdf]

C++, Fractions

[pdf]

Day 09, Thursday 07/10

Complex Patterns from Simple Rules

Finite state and cellular automata

[html]  [pdf]

College Fair

Day 10, Friday 07/11

 

Order From Randomness

Searching, sorting

[html]  [pdf]

Cellular Automata, Fractals and the Game of Life

[pdf]

 

 

 

Week 3: 07/13 – 07/17

 

 

Day 11, Monday 07/13

 

A Computer Learns to Read

Machine learning, optical character recognition

[html]  [pdf]

The Perceptron

[pdf]

Day 12, Tuesday 07/14

 

A Computer Learns to English, Part  I

Strings, files, maps

[html]  [pdf]

String Manipulation & Reading Text Files

[pdf]

Day 13, Wednesday 07/15

 

A Computer Learns to English, Part  II

Statistics and language models

[html]  [pdf]

The Computer as a Poet?

[pdf]

Day 14, Thursday 07/16

 

Deciphering the Code of Life

String Matching and alignments

[html] [pdf]

Protein Alignment

[pdf]

Day 15, Friday 07/17

 

The Limits of Computability

Discussion

no lab

Visit to Brown’s Computer Science Department