Collection of scripts corresponding to LucidProgramming YouTube tutorials
Last updated May 29, 2026
928
Stars
941
Forks
2
Issues
0
Stars/day
Attention Score
49
Topics
Language breakdown
Python 83.8%
Jupyter Notebook 5.9%
Vim Script 5.8%
Go 4.5%
βΈ Files
click to expand
README
LucidProgramming YouTube Tutorial Scripts:
LucidProgramming is my YouTube channel and this repo consists of a collection of scripts corresponding to YouTube tutorials for my YouTube channel.Sponsoring
If you found this code useful in your programming journey, please consider sponsoring the creation of my content by clicking on the "Sponsor" button in this repo.
The funding goes to the creation of new videos, code, and time spent responding to questions, comments, etc.
Your support allows me to spend more time on creating more content to help learners!
I thank the following supporters for helping sponsor the free content here:
Contributing
I would love to compile solutions to all of the problems here, as well as offer solutions in different languages. Just create a pull request with your changes.Index
Algorithms
Greedy Algorithms
Determine the optimal way to assign two tasks to minimize total time.Recursion
Count the number of consonants present in a string. Given a string, find the first uppercase character. Recursively calculate the product of two numbers. Recursively calculate the length of a given string.Search Algorithms
Iterative and recursive implementation and comparison of binary search. We cover the "bisect" function in Python, and how this can be used to apply to problems requiring binary search. We use binary search to determine the first element of a sorted cyclically rotated list. Determine what the "bitonic peak" of a sequence of numbers is using binary search. Determine what the "bitonic peak" of a sequence of numbers is using binary search. Given an array of sorted integers. We need to find the closest value to the given number. Write a function that takes an array of sorted integers and a key and returns the index of the first occurrence of that key from the array. Given an array of n distinct integers sorted in ascending order, write a function that returns a "fixed point" in the array. If there is not a fixed point return "None". Write a function that takes a non-negative integer and returns the largest integer whose square is less than or equal to the integer given.Sorting Algorithms
Calculate the intersection (common elements) between two sorted arrays. Given a list of first/last name pairs, eliminate any entries with duplicate first names.String Processing
You are given some integer as input. Convert the integer you are given to a string. Do not make use of the built-in "str" function. You are given some numeric string as input. Conver the string you are given to an integer. Do not make use of the built-in "int" function. Given a string, determine if it is an anagram, i.e. a word or phrase formed by rearranging the letters of a different word or phrase. Given a string, determine if it is a palindrome, i.e. a word or phrase that can be read the same forwards and backwards. Given two strings, determine if one string is a permutation of the other. Given a string, determine if it is a permutation of a palindrome. Implement an algorithm to determine if a string has all unique characters. Generate the so-called "Look-and-Say" sequence Given a list of first/last name pairs, eliminate any entries with duplicate first names. Given a column string as formatted in a spreadsheet program, write a function that returns a number corresponding to that particular column.Bit Manipulation
Given a number having only one "1" and all other "0"s in its binary representation, find position of set bit. Write a program to determine if a given number is even or odd. Do not make use of the modulus operator. Write a program that takes an integer and tests whether the n-th bit in the binary representation of that integer is set of not. Given a positive integer, check if the integer is a power of 2. Write a program that takes an integer and sets the n-th bit in the binary representation of that integer. Write a program that takes an integer and toggles the n-th bit in the binary representation of that integer. Write a program that takes an integer and unsets the n-th bit in the binary representation of that integer. Write a program that takes an integer and unsets the right most bit in the binary representation of that integerData Science
- [Data Science, Kaggle, Wine and Python -- Part 1: Pandas] (https://www.youtube.com/watch?v=BQj7sy2MmOA)
Data Structures
Arrays
Given two arrays that each represent an integer, compute the sum between these numbers. Given an array with integers that correspond to moves that can be made from left to right, determine if it is possible to advance to the end of the array. Given a list of end-day stock prices, determine what the maximum profit one can make by buying and selling a single stock. Given an array of integers, return the two numbers such that they add up to a specific target.Bloom Filter
An introduction to Bloom filters using Pokemon to explain key concepts.Linked List
Singly Linked List
Given a data element, determine how many nodes in a singly linked list contain this piece of data. Given a data element, delete all nodes in a singly linked list that have this given data element. Insert an element into a singly linked list. Given a singly linked list, determine if the data elements form a palindrome. Given a singly linked list, calculate the length, i.e. the number of nodes in the linked list. Given two sorted singly linked lists, produce a merged singly linked list that is also sorted. Given a singly linked list and an integer N, determine the Nth-to-last node in the list. Given a singly linked list, remove all nodes with duplicate data elements. Given a singly linked list, reverse the linked list. Given a singly linked list and an integer, rotate the contents of the singly linked list. Given two singly linked lists representing integers, produce a third singly linked list that represents the sum of these integers. Given a singly linked list and two nodes, swap the first node with the second. Given a singly linked list swap the tail of the list with the head.Circular Linked List
Insert a node into a circular linked list. Given a linked list, determine if it is a circular linked list. Solve the so-called Josephus Problem using a circular linked list. Remove node from a circular linked list. Given a circular linked list an an integer, split the circular linked list.Doubly Linked List
Add a node in a doubly linked list before a given node. Add a node in a doubly linked list after a given node. Append (add to back) a node to a doubly linked list. Prepend (add to front) a node to a doubly linked list. Delete a node in a doubly linked list. Insert a node in a doubly linked list. Obtain the pairs of nodes that sum up to a given target element. Remove duplicates from a doubly linked list. Reverse a doubly linked list.Stack
Impelementation and description of the stack data structure. Using the stack data structure, determine if a string of parentheses are properly balanced or not. Perform division by two using the stack data structure. Reverse a string using the stack data structure.Go
Introduction to the "Go" Programming language. Cover the concept of "values" in Go. Cover the concept of "variables" in Go. Cover the concept of "constants" in Go. Cover looping constructs in Go. Cover "if/else" conditonal statements. Cover conditional "switch" statements. Cover the concept of "arrays" in Go. Cover the concept of slicing in arrays in Go. Cover the concept of "maps" in Go. Cover the "range" function in Go. Cover the concept of "functions" in Go. Cover how to create functions with multiple return values in Go. Cover how to create functions with multiple types. Cover the concept of "closures" in Go. Cover the concept of "recursion" in Go. Cover the concept of "pointers" in Go. Cover the concept of "structs" in Go. Cover the concept of "methods" in Go. Cover the concept of "interfaces" in Go.imgur Python
Setup for imgur API to access via Python module. Authenticating our imgur application. Uploading an image to an imgur gallery using the Python imgur module.Multiprocessing and Threading
An introduction to the multiprocessing module in Python. A continuation of the introduction of the multiprocessing module in Python. An introduction to lock objects in the multiprocessing module. We see how to make use of the multiprocessing logging functionality. We see how to make use of the multiprocessing Pool class and how to spawn multiple processes. We see how to make use of the multiprocessing communicate information among different processes.Natural Language Processing
Accommodating blog post for this video can be found here. Accommodating blog post for this video can be found here. Accommodating blog post for this video can be found here. Accommodating blog post for this video can be found here. Accommodating blog post for this video can be found here.Podcasts and Interviews
A conversation with Beau Carnes regarding his journey in shifting from a teaching career to a technical career. A conversation with Sam Gavis-Hughson of Byte-by-Byte about how to effectively prepare for a technical interview.System Design
An introduction to system design interviews and Part 1 of designing the URL shortener. Part 2 of the URL shortener system design interview question where we cover how to roughly estimate costs for the project. Part 3 of the URL shortener system design interview question where we cover database design. A general overview of how to approach the system design interview.Technical Interview
Write a script to determine if a given string has all unique characters. Write a script to determine if a given string is an anagram. Given two strings, check if they are permutations of each other. Given a string, check if it is a palindrome. Given an array of integers, return indices of the two numbers such that they add up to a specific target. Each input would have exactly one solution, and don't use the same element twice. Given an array of integers, every element appears twice except for one. Find that single one. Solving the infamous "FizzBuzz" problem in Python. Calculate the factorial of a positive integer. Do so using both an iterative and recursive approach. Write a method to replace all spaces in a string with '%20'. You may assume that the string has sufficient space at the end to hold the additional characters and that you are given the "true" length of the string. There are three types of edits that can be performed on strings: insert a character, remove a character, or replace a character. Given two strings, write a function to check if they are one edit (or zero edits) away. We are given a row-wise sorted matrix of size r-by-c we need to find the median of the matrix given. It is assumed that r-by-c is always odd. String Compression: Implement a method to perform basic string compression using the counts of repeated characters. For example, the string "aabcccccaaa" would become a2b1c5a3. If the "compressed" string would not become smaller than the original string, your method should return the original string. You can assume the string has only uppercase and lowercase letters (a-z). String Rotation: Given two strings, s1 and s2, write code to check if s2 is a rotation of s1 (e.g. "waterbottle" is a rotation of "erbottlewat"). Find the number of 1s in the binary representation of a number.Twitter Python
We make use of the Tweepy module in Python to create a script that allows us to interface with Twitter. We make use of the Tweepy module in Python to create a script that allows us to interface with Twitter. We make use of the Tweepy module in Python to create a script that allows us to interface with Twitter. We make use of the Tweepy module in Python to create a script that allows us to interface with Twitter. We make use of the Tweepy module in Python to create a script that allows us to interface with Twitter.Utility Scripts
Write a script in Python to convert a .wav file to a .mp3 formatted file. Cover how to create slides using pandoc and markdown. Send an email from a Python script with Gmail as the email client.Vim
Video to set up your Vim environment specifically geared for Python development. Part 1 of going through the built-in Vim tutor. Part 2 of going through the built-in Vim tutor. Part 3 of going through the built-in Vim tutor. Part 4 of going through the built-in Vim tutor. Part 5 of going through the built-in Vim tutor. Part 6 of going through the built-in Vim tutor. Part 7 of going through the built-in Vim tutor.Web Scraping and Automation
BeautifulSoup
A quick and simple introduction to BeautifulSoup using the Requests module. We cover various objects that one uses in BeautifulSoup and see how they can be made use of.PyAutoGui
Introduce the PyAutoGui module and give some initial examples of what can be achieved with it. Write a program that makes use of the PyAutoGui module to manipulate the system calculator. Write a program that makes of of the PyAutoGui module to manipulate the mouse.Robobrowser
We use the Robobrowser module to login to a website automatically and extract information once logged in. We use the Robobrowser module to extract balance information for a given giftcard.Scrapy
We install the scrapy module and setup an small project.Selenium
An introduction to the Selenium IDE where we illustrate some of its automation capabilities. If you wish to use Chrome instead of Firefox with Selenium and Python, this video illustrates how to set that up. A simple multi-page website is used to illustrate how to extract content and move through pages. A simple multi-page website is used to illustrate how to extract content and move through pages. Write a script using Selenium, Beautiful Soup, and urllib to extract information from the website Craigslist. Write a script using Selenium, Beautiful Soup, and urllib to extract information from the website Craigslist. Write a script using Selenium, Beautiful Soup, and urllib to extract information from the website Craigslist. Showcase what the overall script and show what will be accomplished in this series. Setup Google Sheets and Google Drive API. Install gspread and oauth in Python. Share the spreadsheet to allow access for script. Amazon bot for searching for item, picking first one, navigating to page and extracting and cleaning the price. Adding functionality to extract the Amazon title, AISN, and URL. Storing this in spreadsheet. Price updater component that takes the prices and plugs them into the spreadsheet. Once completed processing, add in functionality for emailing to self. Primarily will refer to other video that describes how to send email in Python. Outro video that wraps up everything and gives a brief overview of what we accomplished in this series.π More in this category
