## Turing Machine Primer – Computerphile

I’ve just done a film about a special class of Turing Machine called “Busy Beaver” that enables you to play the Busy Beaver game. So there’s lots of wonderful video footage you can see, on that. However for those of you new to this game, who aren’t familiar at all with how Turing Machines work, […]

## Why Google uses Python Programming Language? | Introduction to Python

Python is a major programming language, powering huge infrastructures such as Reddit, Mozilla, Google, NASA, Uber and startups like Zerodha. So, what made it so different to make such an impressive leap? In the early 1990s, you cannot expect to take the pseudo-code out and run it. You need to write it as a code […]

## Algorithms Revised

Welcome! In this presentation we’re going to take a first look at the big idea of algorithms. Let’s begin with an analogy to something you’re probably familiar with. An algorithm is like a recipe for example here’s my recipe for toss salad. First step is to mix together vegetables of your choice, then add two […]

## Exponential Running Time – Intro to Algorithms

It turns out the answer is no, not all problems have efficient algorithms. They are some that actually require an exponential amount of running time. For example, an algorithm may have a bound of Î¸(2â ż). So an n gets larger, this is getting larger and larger and larger very very quickly. So this is […]

## Correctness: Naive – Intro to Algorithms

Let’s go through and actually do a proof of the correctness of the naive algorithm we just spoke about. We’re going to proceed by taking advantage of a particular observation. What we’re trying to prove here is the correctness of the claim that naive(a,b) outputs the product of a and b. The observation that I’m […]

## Geometric Series for Algorithms Analysis

Geometric series come up in algorithm analysis, so here’s a freakin’ video. A bunch of versions of the formula are out there, with different levels of complexity and generality, but if you are like me, and have a memory like… uh, what’s that thing? Anyway, if you know where the first one comes from, the […]

## I Am CSE: Chandrakana Nandi

My name is Chandrakana Nandi, and I’m a fifth-year graduate student in the Programming Languages and Software Engineering Lab in the Allen School. Computer science itself has been an incredibly successful field. And within computer science, I found programming languages and compilers to be extremely exciting because everyone who works in computer science, in some […]

## Running Time – Intro to Algorithms

What I’d like you to think about is how long does it take for naïve(a, b) to execute as we look at larger and larger inputs. These should be really fast. This should still be pretty fast. As we give it larger and larger powers of 2, you should notice that it’s going to take […]

## Russian Peasants Algorithm – Intro to Algorithms

What I’d like to do next is describe a different algorithm that I learned under the name “Russian Peasant’s Algorithm.” If you’d like to learn more about it, you can go to the Wikipedia page called “Ancient Egyptian Multiplication.” This is an algorithm that people actually implemented by hand before there were computers. Here’s the […]

## Randomly Generated Graphs – Intro to Algorithms

Up to this point in the unit, we’ve been talking about very, very structured graphs, very clean and organized graphs–things like chains or rings or grids, hypercubes– that have a great deal of structure, and they look very different from the kids of actual social network graphs that you see in the wild. Regular graphs […]