/**
 * The interface of centroid generator
 */
public interface CentroidGenerator {
    /**
     * Generate k centroids.
     * @param k An int value representing the number of centroids being generated.
     * @param data The data set containing all data points.
     * @return A list of all generated centroids.
     */
    double[][] generate(int k, double[][] data);
}

@@ -362,12 +362,41 @@
 %5B%5D data)
+ throws EmptyDataSetException
 ;%0A%7D%0A

add EmptyDataSetException in CentroidGenerator interface