CS 201 - Spring 2025. 4/23/2025.


[Home]

Welcome to CS 201!

Video of the Day

Nessun dorma, "None shall sleep", Turandot. Luciano Pavarotti. Known as the most difficult tenor aria. Other YouTube renditions by Aretha Franklin and Freddie Mercury. (Nessun dorma is also the motto of Bulldog Days and CS 201 - both during class and when homeworks are due.)

Recursive Image of the Day

Toronto Recursive History Project of Toronto's Recursive History Submitted by former CS 201 student, Derek Song.

Logical problem of the day

Travelling Salesman Problem

A man, a wanderer, is walking along the railroad tracks. He is a bit of a scamp. Doesn't have anywhere to go. He has his backpack on his back. He sees a passenger train speeding towards him at a very high speed. Now, he is walking on the track, between the two rails. And he realized that he is going to be hit by this train. So, he jumps off the track, as anyone would do. But before he jumps off the track, he runs 10 feet forward, toward the train. Now, why would he do this?

https://pollev.com/slade You may also download the app to your phone. Use the "slade" poll id.

Canvas Quiz of the Day (need daily password)

Most days, there will be a simple canvas quiz related to the lecture. You need a password to activate the quiz, which I will provide in class. These quizzes will count toward your class participation grade. The quiz is available only during class.

Click for today's quiz.

Lecture 37: Jeopardy! + Running Time of Programs.

  • I have office hours Wednesdays from 4-6 pm, on Zoom, ID 459 434 2854. This is the last week for office hours.

  • ULA office hours are found at https://csofficehours.org/CS201/schedule. Sign up via the queue.

  • Homework assignments: [Assignments]. hw8 is now available.

    Announcements

  • Yale Computer Society Article in Monday's YDN about y/Labs project for Yale research opportunities.

    Bulldog Days: Wednesday, April 23rd

    You should plan to attend in person to be available to chat up the prospective first years about CS, Yale, and life after high school. You were once in their shoes.

    CS 201 Jeopardy Wednesday, April 23rd

    On Wednesday, April 23rd, we will have an in class Jeopardy competition. Question topics will include racket, Turing machines, UNIX, boolean functions, and digital circuits and gates. Here is an example in another domain.

    Students may compete as individuals or teams. If you wish to compete, send me a note indicating the members of your team.

    The members of the winning team get 10 homework points each. The runners-up get 5 homework points each.

    Update: winning team gets 15 points. Runners-up get 10 points.

    Teams:

    Each team will buzz in using https://www.multibuzz.app/ which is available as an app or a web site. The room code will be announced in class. Your name is your team number AND name.

    There is no Daily Double, Double Jeopardy, or Final Jeopardy. We do have Jeopardy think music!

    CS 201 jeopardy.html

    ULA sous-chef: Danielle Campisi.

    Final Exam: Monday, May 5th, 7pm, Davies

    The exam will be three and a half hours long. You should have plenty of time.

    Here is a practice exam. (solutions). (final.rkt code for solutions) Ignore questions 1, 6, 7(c), 7(e), and 10. We will cover box and pointer notation. Plus Turing Machines and UNIX, through principle 6, that is, everything. Practice TC-201 programs. solutions. Since TC 201 was not on the second midterm, it will be emphasized on the final.

    If your grade on the final exam is higher than your lower midterm grade, it will replace that grade. The quality of mercy is not strained.

  • Review session: Deanna DeCarlo, TBA.

  • SAS students at Watson Center:
    Please remind your students to sign up to reserve a space with us through their SAS Accommodate portal:

    Lecture: Running Time of Programs.

    Runtime.html

    tc201sort.pdf experiment with TC-201 sort program. Plotted in google sheets with insert chart.

    Professor Ozan Erat lectured on 11/14/22: big-O Asymptotic Analysis

    Big-O Cheat Sheet Know Thy Complexities!

    Closures + mutators:

  • Python (Java, C, C++, JavaScript) equivalent of box and pointer notation: Python Tutor Online Compiler, AI Tutor, and Visual Debugger for Python, Java, C, C++, and JavaScript

    Getting to know UNIX

    UNIX Introduction Principles 5 and 6. Available as bonus lecture video on Canvas. (It was briefly hidden in Canvas. It is now happily at home in the course media library.)
    [Home]