My Process for Coding Interview (Book) Exercises

I’ve become frustrated at the time it takes me to solve some coding problems while practicing for the coding interview. I’ve spent as much as 2 hours on a single problem. A typical coding interview question should take approximately 40 minutes to complete from initial explanation to…

Read more

Fun with Tries

I’m a fan of tries. I can’t claim that I’ve used them in practice, but I wish I had. They’re super! Common uses: substring search spell check autocomplete This is an implementation I just put together. Enjoy! Trie API: add(word) - Add the given word to the…

Read more

Book Report: Data Structures and Algorithms in Python

I thought I was done reading books for the learning phase of my study process, and was itching to get back to the coding problems phase. But something was missing. I had read several books and watched months worth of videos, and the code I had seen along the way was C, Java, C++, but not too much…

Read more

Retaining Computer Science Knowledge

I’ve been asked numerous times, “How do you remember all the stuff you’ve been studying?” Here’s my method that will keep all the good stuff in your brain. My Mistake in the Beginning When I first started studying, I was watching videos all day long, taking tons of…

Read more

My Algorithm Design Canvas

For doing daily programming problems, I started using this Algorithm Design Canvas created by HiredInTech. Their methodical process is really good. Check it out. By the way, their design canvas is the starting point for the Coding Question Practice section on Coding Interview University. This is…

Read more

Where to Get a Cheap Whiteboard

Large whiteboards are expensive. For the do-it-yourself type, you can pick up a wall panel at your local home improvement store. Just look for “melamine wall panel”. It’s a very inexpensive, large board meant to be a wall panel for areas with high humidity, like laundry…

Read more

How to Rock the Programming Portion of Your Interview

Well, it’s taken many months to get to this point, because I had a lot to learn. With no formal computer science training and not knowing the difference between a heap (data structure) and a heap (dynamic memory allocation), it took much longer than I expected to get this far. Now on to doing…

Read more

Machine Learning: The Future has Arrived

I wanted to spend a good bit of time gaining deeper knowledge and more experience with machine learning and data science, but just ran out of time this week. Why Machine Learning? It’s the future, right now. It’s the equivalent of finding a O(log α(n)) solution for a O(n!) problem.…

Read more

Computing Convex Hull in Python

Geometric algorithms involve questions that would be simple to solve by a human looking at a chart, but are complex because there needs to be an automated process. One example is: given four points on a 2-dimensional plane, and the first three of the points create a triangle, determine if the…

Read more

Maximum Flow, Minimum Cut and the Ford-Fulkerson Method

Today I’m studying flow graphs and disjoint sets data structure. Maximum flow falls into the category of combinatoric optimization problems. The Ford-Fulkerson method, published in 1956, is a way of solving the computation of maximum flow through a flow graph, which could represent a network…

Read more