Hacker News new | ask | show | jobs
by SamReidHughes 2678 days ago
I don't think it's particularly important to know a big list of what all the data structures and algorithms are, what you really want is to be good at thinking about them and coming up with your own when you need it. But it's easy enough to get a big list of common data structures into your head. It takes about 2 seconds to learn what a trie or AVL tree are. Correction: 6 seconds, just type "avl tree" into Google and you'll be told precisely what it is in one sentence. In my head, all I remember is, it's a BST with some sort of balancing mechanism, and hey, balanced search trees exist, and the performance cost is from pointer chasing and rebalancing logic.

If it will make you more comfortable with the world to understand how popular sorting algorithms work, it's easy enough to learn that. They're all really simple, just a quick dive into Wikipedia. You'll be like, "Oh, that's what merge sort is."

You have worked with graphs. Git history is a directed acyclic graph.

Could you have made Git? Is there software you can't make right now because you're weak in data structures/algorithms type stuff? If so, then improving your ability in that department will make you a better developer.