Помните, что когда мы используем O (...), постоянные факторы не имеют значения, и любой термин, который растет медленнее, чем другой термин, можно отбросить. ~
означает «пропорционален».
Если k
большое, то n = k! ~ k^k
. Так что log n ~ k log k
или k ~ log n / log k
или k ~ log n / log(log n / log k) = log n / (log log n - log log k)
. Потому что n >> k
мы можем отбросить термин в знаменателе, и мы получим k ~ log n / log log n
, поэтому k = O(log n / log log n)
.