For which values of c this time complexity equation is valid : $n^{1+c}$ = O(nlogn) For which values of c this equation holds : $n^{1+c}$  = O(nlogn)
i tried giving them big numbers but still $n^{1+c}$ came out bigger even when i gave c something like 0.1 ? 
but a book that I'm reading says that this equation : $n^{1+c}$  = O(nlogn) holds for some values of c where c > 0 ? 
 A: If $c>0$, then $$n^{1+c}\neq O(n\log n).$$
This is because, if $c>0$, $$n^c\neq O(\log n)$$
A: We have that $\lim\limits_{x\to\infty}\dfrac{\log(x)}x=0$
And for any $\epsilon>0\quad $ we get $\quad \dfrac{\log(n)}{n^\epsilon}=\dfrac{\epsilon\log(n)}{\epsilon\,n^\epsilon}=\dfrac 1\epsilon\dfrac{\log(n^\epsilon)}{n^\epsilon}\to 0$
So the logarithm is negligible before any power of $n$ : $\quad\log(n)\ll n^\epsilon$ when $n\gg 1$.
Thus $\forall \epsilon>0,\ n\log(n)=o(n^{1+\epsilon})$ and compare it to $n^{1+c}$ where $c$ is fixed.
This means that $\dfrac{n\log(n)}{n^{1+c}}\to 0$ and we cannot have $\require{cancel}\cancel{n^{1+c}=O(n\log(n))}$

Although in practical circumstances, $n$ is never infinite, and if you know a boundary $n<N$ for your problem (e.g. you have to compare two algorithms and you know in advance the maximum size of your input) 
then it makes sense to search for which $c$ does $N^{1+c}=O(N\log N)$? (although it is a bit of abusing notations, let say for which $c$ does $N^{1+c}\ll N\log N$)
And you find a critical value $c=\dfrac{\log\log N}{\log N}$
For instance let's take $N=1\,000\,000$ we find $c\approx 0.19$
Best comparison sorts are known to operate in $n\log n$ time, while shell sort with best sequence increments is known to operate in $n^{1.2}\approx n^{1+c}$.
Thus for input sizes smaller than a million, shell sort will be theoretically more efficient.
