We study the inverse problem for non-selfadjoint Sturm-Liouville operators on a finite interval with possibly multiple spectra. We prove the uniqueness theorem and obtain constructive procedures for solving the inverse problem along with the necessary and sufficient conditions of its solvability and also prove the stability of the solution.