  Given a polynomial $p$ of degree $d$ and a bound $\kappa$ on a condition
number of $p$, we present the first root-finding algorithms that return all its
real and complex roots with a number of bit operations quasi-linear in $d
\log^2(\kappa)$. More precisely, several condition numbers can be defined
depending on the norm chosen on the coefficients of the polynomial. Let $p(x) =
\sum\_{k=0}^d a\_k x^k = \sum\_{k=0}^d \sqrt{\binom d k} b\_k x^k$. We call the
condition number associated with a perturbation of the $a\_k$ the hyperbolic
condition number $\kappa\_h$, and the one associated with a perturbation of the
$b\_k$ the elliptic condition number $\kappa\_e$. For each of these condition
numbers, we present algorithms that find the real and the complex roots of $p$
in $O\left(d\log^2(d\kappa)\ \text{polylog}(\log(d\kappa))\right)$ bit
operations.Our algorithms are well suited for random polynomials since
$\kappa\_h$ (resp. $\kappa\_e$) is bounded by a polynomial in $d$ with high
probability if the $a\_k$ (resp. the $b\_k$) are independent, centered Gaussian
variables of variance $1$.
