While this is pretty handy, I must admit that I have a problem with the connotation made by the background coloring of the complexities: On the most superficial level, the ordering is a bit weird at times (O(n+k) is “fair”, but O(nk) is “good” for instance). Moreover, the main takeaway from my algorithms and datastructures course wasn’t the complexity of an algorithm or how to understand where it comes from, which are both important facts, but the meta-problem of understanding the implications, which do not boil down to a simple ordering, since many other constraints, properties and - at a later stage - implementation details have to be considered. This is something a chart like this doesn’t capture and in fact, it might even be misleading.

While this is pretty handy, I must admit that I have a problem with the connotation made by the background coloring of the complexities: On the most superficial level, the ordering is a bit weird at times (

`O(n+k)`

is “fair”, but`O(nk)`

is “good” for instance). Moreover, the main takeaway from my algorithms and datastructures course wasn’t the complexity of an algorithm or how to understand where it comes from, which are both important facts, but the meta-problem of understanding the implications, which donotboil down to a simple ordering, since many other constraints, properties and - at a later stage - implementation details have to be considered. This is something a chart like this doesn’t capture and in fact, it might even be misleading.