We present a greedy algorithm for computing selected eigenpairs of a large
sparse matrix $H$ that can exploit localization features of the eigenvector.
When the eigenvector to be computed is localized, meaning only a small number
of its components have large magnitudes, the proposed algorithm identifies the
location of these components in a greedy manner, and obtains approximations to
the desired eigenpairs of $H$ by computing eigenpairs of a submatrix extracted
from the corresponding rows and columns of $H$. Even when the eigenvector is
not completely localized, the approximate eigenvectors obtained by the greedy
algorithm can be used as good starting guesses to accelerate the convergence of
an iterative eigensolver applied to $H$. We discuss a few possibilities for
selecting important rows and columns of $H$ and techniques for constructing
good initial guesses for an iterative eigensolver using the approximate
eigenvectors returned from the greedy algorithm. We demonstrate the
effectiveness of this approach with examples from nuclear quantum many-body
calculations and many-body localization studies of quantum spin chains.