Gershgorin circle theorem
Computing eigenvalues exactly is expensive, but Gershgorin's theorem locates them almost for free, reading only the matrix entries. Around each diagonal entry a_{ii} draw a disk in the complex plane whose radius is the sum of the absolute values of the other entries in that row, R_i = sum_{j != i} |a_{ij}|. Every eigenvalue lies inside the union of these disks.
The reason is short and pleasant. If A x = lambda x and the largest-magnitude component of x is x_i, then dividing the i-th equation by x_i and isolating gives |lambda - a_{ii}| <= sum_{j != i} |a_{ij}| |x_j / x_i| <= R_i. So lambda is trapped in the i-th disk. Because A^T has the same eigenvalues, you may also use column sums and intersect for a tighter cage.
A refinement sharpens the count: if a group of k disks is disjoint from the rest, exactly k eigenvalues (with multiplicity) lie in that group. So separated disks each hold one eigenvalue, which is how you certify, for instance, that a matrix has no eigenvalue at the origin and is therefore invertible.
It is a localization tool, not a precision tool. For a strongly diagonally dominant matrix the disks are small and the estimate is excellent; for a matrix with large off-diagonal entries the disks may merge into a useless blob. Use it for quick guarantees, then refine with a real solver.
Two disjoint disks, so one eigenvalue sits near 5 and one near 9 — confirmed by the exact values.
A neat corollary: a strictly diagonally dominant matrix (each |a_{ii}| > R_i) is invertible, because no disk reaches the origin, so zero cannot be an eigenvalue.