Given a list of complexities:

How do you order then in their Big O order?
I think the answer is below?

Question now is how does log(n!) become n log(n). Also I don’t know if I got the n! and (n-1)! right. Is it possible that c^n can be bigger than n!? When c > n?
In general how do I visualize such Big O problem … it took me quite long to do this … compared to coding so far … Any resources, videos MIT Open Courseware resources, something with explaination
You might want to see how the functions grow. Here’s a quick plot from Wolfram Alpha:
link
In general,
n^ngrows much faster thanc^nfor anyngreater than somen_0(becausenwill overtakecat some point, even if c is extremely large). log grows much slower than quadratic or exponential, and slightly faster than linear.For
O(log(n!)) = O(nlogn), I believe there was something called Stirling’s Approximation. It boils down to seeing thatO(n!) = O(n^n)asn! = n*(n-1)*(n-2)*...*2*1, son^n = n*n*n*...*nis an upper bound. It can be proven that is it a lower bound as well, but you don’t need that.Since
log(n^n) = nlognby log rules,O(log(n!) = O(log(n^n)) = O(nlogn).