Dynamic Partial Sorting
  The dynamic partial sorting problem asks for an algorithm that maintains lists of numbers under the link, cut and change value operations, and queries the sorted sequence of the $k$ least numbers in one of the lists. We first solve the problem in $O(k\log (n))$ time for queries and $O(\log (n))$ time for updates using the tournament tree data structure, where $n$ is the number of elements in the lists. We then introduce a layered tournament tree data structure and solve the same problem in $O(\log_\varphi^* (n) k\log (k))$ time for queries and $O\left(\log (n)\cdot\log^2\log (n)\right)$ for updates, where $\varphi$ is the golden ratio and $\log_\varphi^*(n)$ is the iterated logarithmic function with base $\varphi$. 
Jiamou Liu and Kostya Ross
cs.DS