this post was submitted on 22 Jun 2024
204 points (96.8% liked)

Programmer Humor

32386 readers
692 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 4 months ago (1 children)

no it's the joke. In o-notation you always use the highest approximation, so o(n!²) does not exist, it's only o(n!)

Otherwise there would never be o(1) or o(n), because o(1) would imply that the algorithm only has a single line of instructions, same for o(n)

[–] [email protected] 7 points 4 months ago

T = O(n) means that there exists a single constant k such that T < kn for all sufficiently large n. Therefore O(n!^2) is not the the same as O(n!), but for example both 10n!, 10000n!, n! + n^2 (note the plus) are O(n!).

Another way to think about this: suppose you believe that O(n) and O(n^2) are distinct. Now plug in only numbers that are factorials (2, 6, 24, ...).