Big O Estimates
1. **Stating the problem:** We have two functions:
$$f_1(n) = (n \log n + n^2)(n^3 + 2)$$
$$f_2(n) = (n! + 2^n)(n^3 + \log(n^2 + 1))$$
We need to find the Big-O, Big-\Omega, and Big-\Theta estimates for both $f_1(n)$ and $f_2(n)$.
2. **Analyzing $f_1(n)$:**
- Inside the first parentheses: $n \log n$ grows slower than $n^2$, so dominant term is $n^2$.
- Inside the second parentheses: $n^3$ dominates the constant $2$.
- Therefore, dominant terms multiplied give:
$$f_1(n) \approx n^2 \times n^3 = n^5$$
- So,
- Big-O estimate: $O(n^5)$ because the function grows no faster than $n^5$ times a constant.
- Big-\Omega estimate: $\Omega(n^5)$ because the function grows at least as fast as $n^5$ times a constant.
- Big-\Theta estimate: $\Theta(n^5)$ because both bounds are tight.
3. **Analyzing $f_2(n)$:**
- Inside the first parentheses: $n!$ grows faster than $2^n$, so $n!$ dominates.
- Inside the second parentheses: $n^3$ grows faster than $\log(n^2+1)$, so $n^3$ dominates.
- Multiplying dominant terms:
$$f_2(n) \approx n! \times n^3$$
- So,
- Big-O estimate: $O(n! \times n^3)$
- Big-\Omega estimate: $\Omega(n! \times n^3)$
- Big-\Theta estimate: $\Theta(n! \times n^3)$
4. **Summary:**
- $f_1(n)$: $O(n^5)$, $\Omega(n^5)$, $\Theta(n^5)$
- $f_2(n)$: $O(n! n^3)$, $\Omega(n! n^3)$, $\Theta(n! n^3)$