Search for tag: "loop"

CAM Colloquium - Yulij Ilyashenko (11/20/20)

Zoom Recording ID: 95217932087 UUID: XeOXXTLdReaGoMkl0249tw== Meeting Time: 2020-11-20T20:15:03Z

From  Erika Fowler-Decatur on March 31st, 2021 2 plays

Lesson 30.6 The Partition algorithm

In the previous video, we saw that nested loops are causing our sorting algorithms to be slow. To speed things up, we need to get rid of one of these loops. To do that, we will need a special…

From  Hannah Lee on December 10th, 2020 12 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 13 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 14 plays

Lesson 30.3 Insertion Sort

In this video we introduce insertion sort, which is one of the simplest sorting algorithms to understand. If you have ever sorted cards in your hand it is likely that you have used this sorting…

From  Hannah Lee on December 10th, 2020 13 plays

Lesson 30.2 Horizontal Notation

Sorting algorithms can be quite sophisticated. In order to understand them, we need some way to visualize them. In this video, we introduce horizontal notation, which is a way to track how much of a…

From  Hannah Lee on December 10th, 2020 13 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 13 plays

Zoom Dec. 3. Generators

In this presentation we will review, generators which lead into the last major topic of the course (coroutines). Once again, this will involve a lot of visualization.We also start off this…

From  Hannah Lee on December 3rd, 2020 17 plays

Lesson 29.7 Time Budgeting (OPTIONAL)

This video is not optional because the material is advanced. It is optional because it is not relevant for the final assignment. However, you may be interested in this video if you want to see…

From  Hannah Lee on December 3rd, 2020 13 plays

Lesson29.6 Animation Coroutines

Just as it was hard to design iterators with classes, it is also hard to design timed animation with classes. In this video, we show how to use coroutines to make animation design so much simpler.

From  Hannah Lee on December 3rd, 2020 33 plays

Lesson 29.3 Generators Revisited

In the previous video, we said that generators are a type of coroutine. In this video, we explore this idea. We use yield statements to write generators that are a little more sophisticated than…

From  Hannah Lee on December 3rd, 2020 38 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 9 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 29 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 28 plays

Lesson 28.4 Generator Visualization

Generators look like normal functions, but they do not behave like them. In this video we show how to visualize them, using the Python Tutor.

From  Hannah Lee on December 3rd, 2020 29 plays