O (p), O (n), , O (log p ) O (log n) .
O (p)
, , DFS, , node , , p- node . , "" , , , ( , ), . , (v, p), :
- p- u node v. O (p).
- p- l u - node, , node, p . O (p).
- p- r u ( ). O (p).
- x [r] - x [l] + 1, x [i] , , , , node i. .
- x [i], 1 <= <= n. DFS, y [], y [d] , d. , y [d] 0 d; DFS, node v d, y [d], x [v] = y [d].
O (log p) -
, , , node , O (p) = O (n). , 4 , O (p) - .
, , . " ": node v log2 (depth (v)) . , log2 (maxDepth) DFS, i- node v i- (i-1) - (i-1) - ancestor: node DFS. , p, log (p) , . "-" " " 2 3 O (log p).