  The structure of an evolving network contains information about its past.
Extracting this information efficiently, however, is, in general, a difficult
challenge. We formulate a fast and efficient method to estimate the most likely
history of growing trees, based on exact results on root finding. We show that
our linear-time algorithm produces the exact stepwise most probable history in
a broad class of tree growth models. Our formulation is able to treat very
large trees and therefore allows us to make reliable numerical observations
regarding the possibility of root inference and history reconstruction in
growing trees. We obtain the general formula $\langle \ln \mathcal{N} \rangle
\cong N \ln N - cN$ for the size-dependence of the mean logarithmic number of
possible histories of a given tree, a quantity that largely determines the
reconstructability of tree histories. We also reveal an uncertainty principle:
a relationship between the inferrability of the root and that of the complete
history, indicating that there is a tradeoff between the two tasks; the root
and the complete history cannot both be inferred with high accuracy at the same
time.
