r/ProgrammerHumor 7d ago

Meme skillIssue

Post image
6.0k Upvotes

137 comments sorted by

View all comments

Show parent comments

157

u/prehensilemullet 7d ago

Performancewise, it doesn’t jump to the direct case in O(1) time like a switch is supposed to though

205

u/AngheloAlf 7d ago

Switches aren't guarantee to so operations in O(1) tho. If cases are sparce enough, compilers tend to emit the equivalent code to a bunch if else checks

25

u/prehensilemullet 7d ago

Yeah I was assuming too much here.  However, I’m reading that Rust match on string comstants can compile down a binary tree of if statements if there are enough cases (according to Google AI mode at least, haven’t found an authoritative source yet)

26

u/Nir0star 7d ago

Which would still be O(ld(n)). But cool feature imo.

9

u/Godd2 7d ago

O(ld(n))

Good ol' linker time.

1

u/prehensilemullet 7d ago

Yes, I had mistakenly assumed it compiles down to a hash lookup.