Professional Documents
Culture Documents
L02 Algorithms
L02 Algorithms
gr/courses/INF161/
2016 - I.
- 2016 - . - 02 - ASYMPTOTICS 1
:
? -
?
?
/ ? -
~ # , ~ #
T(n) n ( # bits)
T(n) as n increases (n)
T(n)
Notations O, ,
- 2016 - . - 02 - ASYMPTOTICS 2
~ #
(n) , n= # of bits
(n)
n
(n)
Web
D. Knuth 1968
- 2016 - . - 02 - ASYMPTOTICS 3
T(n)
f(n) = O(g(n)) : H f(n) g(n)
g(n) f(n)
n
c 0, no 0, f (n) c g (n), n no
- 2016 - . - 02 - ASYMPTOTICS 4
O
f (n) ak n k ak 1n k 1 ak 1n k 2 a2 n 2 a1n a0 , ai 0
ak n k ak 1n k ak 1n k a2 n k a1n k a0 n k
ak ak 1 ak 2 a2 a1 a0 n k
c n k , c ak ak 2 a2 a1 a0
f (n) cn k , c ak ak 2 a2 a1 a0 , n 0
f ( n) O ( n k ) k (nk )
- 2016 - . - 02 - ASYMPTOTICS 5
- 2016 - . - 02 - ASYMPTOTICS 6
T(n)
f(n) = (g(n)) : H f(n) g(n)
g(n) f(n)
n
c 0, no 0, f (n) c g (n), n no
- 2016 - . - 02 - ASYMPTOTICS 7
f (n) ak n k ak 1n k 1 ak 2 n k 2 a2 n 2 a1n a0 , ai 0
ak n k
c n k , c ak
f (n) cn k , c ak , n 0
f ( n) ( n k ) k (nk )
- 2016 - . - 02 - ASYMPTOTICS 8
- 2016 - . - 02 - ASYMPTOTICS 9
T(n)
f(n) = (g(n)) : H f(n)
g(n)
g(n) f(n)
n
- 2016 - . - 02 - ASYMPTOTICS 10
f (n) ak n k ak 1n k 1 ak 2 n k 2 a2 n 2 a1n a0 , ai 0
k
f ( n) O ( n )
k
f ( n ) ( n )
f ( n) ( n k )
k (nk)
- 2016 - . - 02 - ASYMPTOTICS 11
f (n)
1) If lim c 0, then f (n) ( g (n))
n g ( n)
f ( n)
2) If lim 0, then f (n) O( g (n)) and f (n) ( g (n))
n g ( n )
f ( n)
3) If lim , then g (n) O ( f (n)) and g (n) ( f (n))
n g ( n)
- 2016 - . - 02 - ASYMPTOTICS 12
f ( n)
If lim c 0, then f (n) ( g (n))
n g ( n)
f ( n)
g ( n)
c
f ( n)
lim c0
n g ( n) n0 n
f ( n)
0 n0 : c , n n0
g ( n)
f ( n)
0 n0 : c c , n n0
g ( n)
c1 c , c2 c : c1 g (n) f (n) c2 g (n), n n0
f (n) ( g (n))
- 2016 - . - 02 - ASYMPTOTICS 13
f (n) O( g (n)) and f (n) ( g (n)) f (n) ( g (n))
f (n) O( g (n) g (n) ( f (n))
f O(h), g O(h) f g O(h)
()
()
()
( )
- 2016 - . - 02 - ASYMPTOTICS 14
( )
.. (n)= n2+O(n)+O(nlogn), (n) (n2)
:
..
(n+(1))(n+(logn) + O(1))
= n2 + O(nlogn) + O(n) + O(n)+ O(logn) + O(1)
= O(n2)
- 2016 - . - 02 - ASYMPTOTICS 15
A
?
= = (nk) !
:
, ,
...
- 2016 - . - 02 - ASYMPTOTICS 16
(nk)
//
()
- 2016 - . - 02 - ASYMPTOTICS 17
- 2016 - . - 02 - ASYMPTOTICS 18
x
b 0, x 0: logb n O(n ) .. log n = O(n0,001 )
,
d n
r 1, d 0 : n O ( r ) .. n1000 =O(1.001n)
,
.. 2n = O(2.001n)
- 2016 - . - 02 - ASYMPTOTICS 19
O(1) constant
O(log n) logarithmic
(logk n) poly-logarithmic
O(n) linear
O(nlog n)
O(n2) quadratic
O(n3) - cubic
O(nk) polynomial
O(2n) exponential
(an)
O(n!) (logk n) < O(nk) < (an), a>1
(nn)
- 2016 - . - 02 - ASYMPTOTICS 20