Choosing a correct classification algorithm for a given data set is an important task considering the existing multiple classifiers. A method of recommending a suitable algorithm and its optimum parameters for a given data set is proposed. Firstly, six different types of measures are computed for each data set to be representation of its characteristics. Then, the performance and optimum parameters for a given algorithm are computed by using grid search method. Afterwards, a model was built to predict the variance of classifiers for a given data set and another model was built to predict the best suitable algorithm. The proposed method tries to predict the optimum parameter for a certain algorithm based on knowledge learning from history data sets. To evaluate the performance of the proposed method, some extensive experiments for four different types of algorithms are conducted upon the UCI data sets. The results indicate that the proposed method is effective.