
LeetCode 684. Redundant Connection (UnionFind)
Difficulty: Medium I used 3 approaches for this problem, using DFS, unionfind with sets, and unionfind with an array. Depth First Search The intuition behind my DFS approach is to first create an adjacency list to traverse the graph. Then for each edge in reverse order (since we want to find the extra edge with […]

LeetCode 210. Course Schedule II Solved (Topological Sort)
Difficulty: Medium This problem is a more complete version of the Course Schedule I problem. Topological Sort is used for sorting dependencies, in this problem we have to order courses in a way which we can take them all, and so courses have prerequisites and the prerequisites have prerequisites. This takes the form of a […]

LeetCode 125. Valid Palindrome Solved (Python)
Difficulty: Easy A palindrome is a word that reads the same forward and backward. This problem is a bit different from a normal palindrome check. A normal palindrome check problem can be solved simply by checking if the reverse of the string is the same as the string. Which in python is a simple oneliner: […]

Controlling IoT devices with Alexa and Apple Home Together
This project originally started as a way for me to control my nonsmart TV and AC with Alexa which I completed and wrote about in my previous post. But my strive for perfection turned into a 34 month project to add the ability to use Apple’s Home app to control all the smart devices in […]

Building Alexa universal IR remote, to control TV or AC with ESP8266 (Wemos D1 mini)
(I have bolded the important details if you want to do this project and I added images, cause I find it to be helpful) This is my first main project after getting started with Arduino, which is fairly easy in theory, but allowed me to learn a lot as a beginner. But essentially, I record […]