1. Introduction |
2. Preprocessing Problems |
3. Orthogonal Range Searching |
4. Range Trees |
5. Interval Trees |
6. Priority Search Trees |
7. Point Stabbing |
[FIGURE OF L-Shape that needs to be re-drawn]
[FIGURE]
|
Next we claim T(n)=O(nlogn) as follows: Constructing A(u) takes time O(nulognu). It follows that T(n) = åu O(nulognu) = O(nlog2 n). To improve this to the claimed bound, we construct the auxialliary structures A(u) in a bottom up fashion. Assuming that the children of u are uL and uR, suppose A(uL) and A(uR) have been constructed. Then we can construct A(u) in time O(nu), not O(nulognu).
Finally, we claim that Q(n)=O(k+log2 n). That is because we have to handle O(logn) hard nodes, and each costs O(logn) time.
[FIGURE: A(u), A(uL), A(uR)]