I’ve been working with Node.js and its ecosystem. Over the past few months, I’ve switched to Go and I’m getting huge enjoyment from its approach — on one hand, simplicity and no syntactic sugar (you can get diabetes from all the sugar in JS, it’s too sweet🙃), on the other hand, incredible capabilities and a greater sense of being “close to hardware.”
I decided to document my learning notes in an open repo AlgoDSgo — specifically, implementations of classic algorithms in Go. This isn’t production code, but educational examples with comments and Big O complexity analysis.
Sure, there are hundreds of similar repos... so what’s the value in opening another one? 👇
- Classic solutions to classic CS problems, without over-engineering or language-…
I’ve been working with Node.js and its ecosystem. Over the past few months, I’ve switched to Go and I’m getting huge enjoyment from its approach — on one hand, simplicity and no syntactic sugar (you can get diabetes from all the sugar in JS, it’s too sweet🙃), on the other hand, incredible capabilities and a greater sense of being “close to hardware.”
I decided to document my learning notes in an open repo AlgoDSgo — specifically, implementations of classic algorithms in Go. This isn’t production code, but educational examples with comments and Big O complexity analysis.
Sure, there are hundreds of similar repos... so what’s the value in opening another one? 👇
- Classic solutions to classic CS problems, without over-engineering or language-specific optimizations, for clear understanding of the algorithm.
- Meaningful semantic naming
- Aiming for simple and idiomatic Go code
- Breakdowns and diagrams right in the comments
What’s included:
Search algorithms: Binary, Linear, Jump, BFS, DFS
Sorting algorithms: Bubble, Selection, Insertion, Merge, Quick, Quick In-Place, Heap
LeetCode problems: Two Sum #1, Merge Sorted Array #88, Valid Palindrome #125
Interview exercises: Reverse String, Remove Duplicates, Remove Whitespaces, Longest Word
I’m planning to expand it by adding data structures and more LeetCode problems.
If you’re also learning Go or algorithms — I’d be happy if this helps you and to hear your feedback!
Repository: github.com/AshBuk/AlgoDSgo