( O, , ) , "" ( ) , .
O, : f (x) g (x), f (x) = O (g (x)), , x, g (x ) f (x). "", (, f (x) > g (x) x), g (x) (g (x) >= f (x)). , ( ). Big-O , ( , ).
"" . , : - ? ?
, N ( ), O (N). N = 10 10 , N = 100 = > 100 , N = 1000 = > 1000 ... , .
:
for (int i = 0; i < N; i++) {
if (i == randomNumber()) {
}
}
, , , , " -" . , , , , , big-O ( ), , O (N).
:
for (int i = 0; i < N; i++) {
for (int i = 0; i < N; i++) {
}
}
, N , . N = 10, 10x10, N = 100 = > 100x100 , N = 1000 = > 1000x1000 . , , N x N, O (N x N).
. , , . , , ( ), , N ? :
Node actual = root;
while(actual.left != null) {
actual = actual.left
}
// in actual we have left-most leaf
( ) ? , , ? ? - log (N) - = 2. , O (log (N)) - , , , (, , ...)