Find large power of a non-diagonalisable matrix 
If $A = \begin{bmatrix}1 & 0 & 0 \\ 1 & 0 & 1 \\ 0 & 1 & 0 \end{bmatrix}$, then find $A^{30}$.

The problem here is that it has only two eigenvectors, $\begin{bmatrix}0\\1\\1\end{bmatrix}$ corresponding to eigenvalue $1$ and $\begin{bmatrix}0\\1\\-1\end{bmatrix}$ corresponding to eigenvalue $-1$. So, it is not diagonalizable.
Is there any other way to compute the power?

You can use repeated squaring to efficiently compute large powers.
$$ A^{30} = A^{16} \cdot A^8 \cdot A^4 \cdot A^2$$
where $A^4 = {A^2} ^2$, $A^8= {A^4}^2$, etc.
