I need to diagonalize such kind of matrix during research: it's n-by-n, with it's upper-left (n-1)-by-(n-1) corner be diagonal while the nth row & column are dense. It's observed that the self adjoint eigensolver is not quite efficient as a solution when n is greater than roughly 2000 and there is no existing eigensolver to take advantage of the sparseness. A possible way I just came up with is to do the LU via the corresponding sparse package first and then attack the two triangular matrices. However I'd love to hear more suggestions & insight. 
How to construct a eigensolver targeting a specific type of matrix
sparse;eigensystem