CIS 110 Spring 2013 - Introduction to Computer Programming

upenn.edu | directories | van pelt library
seas.upenn.edu | CETS | engineering library
computer graphics & game dev (SIGGRAPH @ Penn) | dining philosophers (DP) | science & tech wing (STWING) | women in cs (WICS)
CETS Answers
CIS 110 Lectures

CIS 110 Lectures

A tentative list of lecture topics is given below. These may change in the course of the semester. Lecture slides will be posted as they are ready; there is no guarantee they will be posted in advance of the lecture.

We are recording lectures using the Echo360 system. In general, either the 10:00am or 12:00pm lecture will be posted to the video page sometime after class.

Some things to keep in mind:

  • Recording can fail for a variety of reasons, and there is no guarantee any particular lecture will be available.
  • Recordings do not capture in-class demonstrations, the chalkboard, or questions from students. They are not a replacement for attending lecture.
  • You are responsible for all material covered in class whether or not the recording captures it.
  • The current technology may capture audio for several minutes before and/or after lecture. Please keep this in mind when talking to me before and after class!.

Lecture VOD archive (PennKey protected).

Fall 2012 Lectures and VOD archive.

Lecture 0: Introductory Lecture
  • 9 January
  • Readings: Course web site (especially policies)
  • Slides: PDF
Lecture 1: Program Arguments and Types
  • 11, 14, 16 January
  • Readings: Textbook, § 1.1 - 1.2
  • Slides: PDF
Lecture 2: Conditionals and Loops
Martin Luther King Jr. Day
  • 21 January
  • No Class or Office Hours
Lecture 3: Arrays, I/O, and N-Body
  • 25, 28 January
  • Array Slides: PDF
  • I/O Slides: PDF
  • Shuffle Demo: PDF
Lecture 4: Functions and Libraries
  • 30 January, 1, 4, 6 February
  • Function Slides: PDF
  • Library Slides: PDF
  • Recursion Slides: PDF
  • Recursive GCD Demo: PDF
Lecture 5: Sorting
Midterm Review
  • 11 February
Lecture 7: Encryption, Bits, and 2-D Arrays
  • 13, 15 Februrary
  • PDF
Lecture 8: Number Systems and TOY
Lecture 9: Error Correcting Codes
Spring Break
  • 2 - 10 March
  • No Classes or Office Hours
Lecture 10: TOY Simulator
Lecture 11: Data Types
Lecture 12: Linked Lists
  • 20, 22
  • Slides: PDF
Lecture 13: Traveling Salesman
Lecture 14: Dummy Nodes in Linked Lists (and DDoS attacks)
  • 27 March
  • LinkedQueueOfDoubles.java without using dummy nodes.
  • OLQOD.java (OtherLinkedQueueOfDoubles) using a dummy node at the head of the list.
  • Blog post about DNS flood attacks from CloudFlare.
  • CloudFlare has more information here and here about this week's DDoS attacks against Spamhaus that triggered this lecture topic.
Lecture 15: Tree
Special Topics
  • Remainder of the semester

 

Credits: In addition to material from the Introduction to Programming book, these lectures are based on additional material provided by Dr. Kevin Wayne, Donna Gabai, and Prof. Robert Sedgewick of Princeton University.