This paper is devoted to a class of iterative methods for solving nonsymmetric or indefinite problems that are dominated by some SPD (symmetric positive definite) problem. The algorithm is based on a direct solver for the original equation restricted on a small subspace and a given iterative method for the SPD equation. It is shown that any convergent iterative method for the SPD problem will give rise to an algorithm that converges with a comparable rate if the small subspace is properly chosen. Furthermore a number of preconditioners that can be used with GMRES type methods are also obtained.