Let’s face the uneasy truth: without a deep knowledge of the mathematics behind grinding algorithms and data structures, like those on LeetCode, it is impossible to come up with original solutions to real, profitable engineering problems.

It doesn’t matter how many times you grind LeetCode challenges, for instance, those related to finding the shortest routes or some variation of the Dijkstra algorithm; if you don’t have any deep mathematical knowledge of the graph theory upon which it is based, you are painfully wasting your time. It is simple to see; just a slightly different formulation of the problem would be enough to expose you in the most painful way.

Yup, we all know that the tech industry is turned on by those LeetCode challenges and uses them in technical interviews. The result is a huge amount of false-positive candidates with a good memory for learning even a phone book but totally clueless when facing real problems where most toy LeetCode algorithms must be greatly tweaked and extended, or fail miserably.