An efficient clustering algorithm is proposed in an unsupervised manner to cluster the given data set. This method is based on regulating a similarity measure and replacing movable vectors so that the appropriate clusters are determined by a performance for the classification validity. The proposed clustering algorithm needs not to predetermine the number of clusters, to choose the appropriate cluster centers in the initial step, and to choose a suitable similarity measure according to the shapes of the data. The location of the cluster centers can be efficiently determined and the data can be correctly classified by the proposed method. Several examples are considered to illustrate the effectiveness of the proposed method.