YouTube23 Sept 2025
2h 32m

CS50 Fall 2025 - Lecture 3 - Algorithms (live, unedited)

Podcast cover

CS50

This CS50 lecture, "Week 3," delves into the world of algorithms, focusing on sorting and searching techniques. The lecture begins with a practical demonstration of different counting algorithms to determine the number of people in the room, illustrating linear and divide-and-conquer approaches. It introduces key computer science concepts such as arrays, linear search, and binary search, using a hands-on activity involving volunteers searching for a specific bill among sorted and unsorted dollar bills. The lecture further explores the efficiency of algorithms using Big O notation, Omega, and Theta, and differentiates between upper and lower bounds. The discussion extends to data structures, including the creation of custom types using "typedef struct" in C, and concludes with an explanation of sorting algorithms like selection sort, bubble sort, and merge sort, complete with pseudocode and real-world visualizations.

Outlines

Part 1: Fundamentals, Search, and Complexity

Part 2: Data Structures and C Implementation

Part 3: Sorting Algorithms and Performance Analysis

Part 4: Recursion and Advanced Sorting

Sign in to continue reading, translating and more.

Open full episode in Podwise