Algorithms to Go
Code should be correct, clear and efficient.
Prefer simple. Avoid clever.
- How to analyze time complexity: Count your steps
- Big O notation: definition and examples
- Loop invariants can give you coding superpowers
- Dynamic programming [step-by-step example]
- API design: principles and best practices
- Top programming languages in use 2000-2020 [informal study]
- Why Go? – Key advantages you may have overlooked
- Do you make these Go coding mistakes?
- Concurrent programming
- Go string handling overview [cheat sheet]
- Maps explained: create, add, get, delete
- Java to Go in-depth tutorial
- Functional programming in Go [case study]
- Your basic graph: graph algorithms and data structures
- MSD radix sort: a fast string sorting algorithm
- Bitset: set data structure for positive numbers
- Bloom filter: probabilistic set data structure
This great website [...] explains lots of CS fundamentals and Go tips/tricks in a very clear and simple way.
– Fatih Arslan 28 Feb 2019
Wow, this is such a goldmine of beginner-friendly #golang content.
– Samuel Lampa 16 Mar 2018
This is top-notch. Wish this level of goodness existed for all languages.
– Brian Carper 14 Feb 2018