Given an undirected connected graph G, the Minimum Leaf Spanning Tree Problem (MLSTP) consists in finding a spanning tree T of G with minimum number of leaves. This is an NP-hard problem with applications in communication and water supply networks. In this paper, we propose a heuristic algorithm to provide high-quality solutions (spanning trees with low number of leaves) for an input graph. Our heuristic is based on the scatter search methodology, and it combines different elements to perform an efficient search of the solution space. In particular, it applies both randomized and deterministic strategies in the construction methods to generate an initial set of solutions. A combination method specifically designed for trees coupled with two local searches with a diversity evaluation function, provides a good balance between search intensification and diversification. Experiments conducted on a large set of graphs indicate that our algorithm is able to generate spanning trees with a lower number of leaves than previous methods. Additionally, it is able to match the optimal solution in most of the instances for which it is known, outperforming the existing methods.