Redundant rows and columns have been used for years to improve the yield of DRAM fabrication. However, finding a memory repair solution has been proved to be an NP-complete problem. This paper presents an efficient algorithm which is able to find a repair solution for shared spare memory arrays if a solution exists. The remarkable performance of the algorithm can be demonstrated by experimental results.