Search for tag: "elements"

Zoom Dec. 8. Coroutines

Generators may seem like a weird detour for this late in the course. But in this presentation, we show how they are used in graphics and animation.Generators are a specific example of a concept known…

From  Hannah Lee on December 10th, 2020 11 plays

Lesson 30.7 Quicksort

The partition algorithm breaks up the list into two kind-of-sorted portions. In this video, we show how to use this fact with divide-and-conquer to implement a new sorting algorithm: quicksort. For…

From  Hannah Lee on December 10th, 2020 7 plays

Lesson 30.5 Selection Sort

In the previous video we saw that insertion sort is not an ideal sorting algorithm. In this video we try our hand at another algorithm: selection sort. This is another simple algorithm that may be…

From  Hannah Lee on December 10th, 2020 7 plays

Lesson 30.4 Sorting Performance

Through the course, we have only cared about specifications, and not performance. But as we see in this video, sorting is an application where performance really matters. Little changes to the size…

From  Hannah Lee on December 10th, 2020 8 plays

Lesson 30.1 Searching

In this video, we look at the different ways we can search a list for an element. In doing so, we see that it helps a lot for our lists to be sorted. Hence that will be our focus for the rest of this…

From  Hannah Lee on December 10th, 2020 8 plays

Lesson28.8 List Comprehension (OPTIONAL)

This video is not optional because the material is advanced. It is optional because this video series has run long and this topic is less important for you to know. When we are done with out…

From  Hannah Lee on December 3rd, 2020 6 plays

Lesson 28.6 map and filter

In this video we talk about two very famous generators: map and filter. We show how to use these to replace writing code with a for-loop.

From  Hannah Lee on December 3rd, 2020 26 plays

Lesson 28.5 Generator Design

Now that we know how generators work, it is time to write our own. In this video we show how easy it is. We just take out experience with the accumulator pattern and replace the accumulator with a…

From  Hannah Lee on December 3rd, 2020 25 plays

Lesson 28.3 The yield Statement

Making iterator classes is hard. In this video, we show an alternative, allowing us to write the iterator as a ‘function”. This requires the addition of a new python statement, the yield…

From  Hannah Lee on December 3rd, 2020 26 plays

Lesson 28.1 Iterators

We are familiar with iterables, types that we can use in a for-loop. In this video we introduce the iterator. This is a type that can be used in a for-loop, but we can also manually step through the…

From  Hannah Lee on December 3rd, 2020 28 plays

Lesson 26.5 While-Loops vs For-Loops

We can always replace for-loops with while-loops, but should we? In this video we talk about the trade-offs of the two control structures and why it might be better to use over the other.

From  Hannah Lee on November 12th, 2020 36 plays

Lesson 26.1 The While-Loop

In this video we talk about the while-loop and explain why it is necessary. In particular, there are types of iteration that are not possible with the for-loop.

From  Hannah Lee on November 12th, 2020 43 plays

Zoom Oct. 27. Nested Lists and Dictionaries

This presentation explores the last built-in (as opposed to user-defined) types in this course. These types are often used to store data in files.We actually had an (accidental) sneak peak at these…

From  Hannah Lee on October 27th, 2020 7 plays

Lesson 18.5 Immutable Table Functions

In this video we show how to write an immutable function on a table of data. In most ways this is no different than writing an immutable function on a list. Except that this time we may need multiple…

From  Hannah Lee on October 27th, 2020 28 plays

Lesson 18.3 Tables

A table of data is one that is divided up into regular rows and columns. In this video we show how to represent a table as a two-dimensional nested list. While there are alternate ways of…

From  Hannah Lee on October 27th, 2020 26 plays

Lesson 18.2 Nested Lists

In this video we show how to handle the special case when the objects inside of a list are other lists. In particular, we show how to chain together brackets to drill down into nested lists.

From  Hannah Lee on October 27th, 2020 34 plays