The general method using exponentiation by squaring.
In some situations, the time analysis is fully determined by realizing that the direct algorithm uses $\Theta(n)$ multiplies, but the square-and-multiply algorithm only uses $\Theta(\log n)$ multiplies. However, numbers grow large in this calculation, and the cost of multiplication becomes significant and must be accounted for.
Let $N$ be the exponent and $M$ be the bit size of $n$. The direct algorithm has to, in its $k$-th multiply, compute an $M \times kM$ product (that is, the product of an $n$ bit number by a $kn$-bit number). Using high school multiplication, this costs $kM^2$, and the overall cost is
$$ \sum_{k=1}^{N-1} k M^2 \approx \frac{1}{2} N^2 M^2 $$
With $N$ as large as it is, that's a lot of work! Also, because $n$ is so small, the high school multiplication algorithm is essentially the only algorithm that can be used to compute the products -- the faster multiplication algorithms I mention below can't be used to speed things up.
In the repeated squaring approach, the largest squaring is $NM/2 \times NM/2$. The next largest is $NM/4 \times NM/4$, and so forth. The total cost of the squarings is
$$ \sum_{i=1}^{\log_2 N} \left(2^{-i} N M \right)^2 \approx \sum_{i=1}^{\infty} N^2 M^2 2^{-2i} = \frac{1}{3} N^2 M^2$$
Similarly, the worst cost case for the multiplications done is that it does one $M \times NM$ multiply, one $M \times NM/2$ multiply, and so forth, which add up to
$$ \sum_{i=0}^{\infty} M (M N) 2^{-i} = 2 M^2 N $$
The total cost is then in the same ballpark either way, and there are several other factors at work that would decide which is faster.
However, when both factors are large, there are better multiplication algorithms than the high school multiplication algorithm. For the best ones, multiplication can be done in essentially linear time (really, in $\Theta(n \log n \log \log n)$ time), in which case the cost of the squarings would add up to something closer to $MN$ time (really, $MN \log(MN) \log \log(MN)$), which is much, much, much faster.
I don't know if BigInteger
uses the best algorithms for large numbers. But it certainly uses something at least as good as Karatsuba, in which case the cost of the squarings adds up to something in the vicinity of $(NM)^{1.585}$.
Suppose you want to compute ${3.21}^{1/5}$. If you have a logarithm table (say base 10), you only need the logarithms of numbers between 0.1 and 1 stored (alternatively between 1 and 10), as many as is relevant for your precision.
Then because
$$\log (3.21^{1/5}) = \frac{1}{5}\left(\log(10) + \log(0.321)\right)= \frac{1}{5}\left(1+\log(0.321)\right)$$
Now you look up $\log(0.321)$ in your table, which will look something like this
$$\begin{array}{c|c}
\text{Input} & \text{Output} \\
\hline
\ldots & \ldots \\
\color{red}{0.321} & -0.493 \\
\ldots & \ldots
\end{array}$$
do the above computation
$$\frac{1}{5}(1+\log(0.321)) = \frac{1}{5}(1-0.493) = 0.101$$
and look up the result in the "answer column" of your table to revert the $\log$ operation. Since the answer is positive, and we worked with a table containing logarithms of numbers between 0 and 1, we'll need to look up the opposite first
$$\begin{array}{c|c}
\text{Input} & \text{Output} \\
\hline
\ldots & \ldots \\
0.792 & \color{red}{-0.101} \\
\ldots & \ldots
\end{array}$$
and now take the inverse of that number to obtain the result: $1.262$.
Best Answer
Given any $\alpha\in{\mathbb C}$ one has the binomial series, giving the value of $$(1+x)^\alpha:=\exp\bigl(\alpha\log(1+x)\bigr)$$ without taking recourse to any tables: $$(1+x)^\alpha=\sum_{k=0}^\infty {\alpha\choose k}\>x^k\qquad(-1<x<1)\ .$$ Here $${\alpha\choose k}:={\alpha(\alpha-1)\cdots(\alpha-k+1)\over k!}$$ is a generalized binomial coefficient.
If you want $y^\alpha$ for a given $y>0$ let $x:=1-y$ when $y<1$, and let $x:=-{y-1\over y}$ when $y>1$, then take the reciprocal of the result.