1. A computer implemented method for clustering a data set of objects comprising: performing divide phase processing to partition the data set into two or more partitions forming a hierarchy of the objects, said divide phase processing including: computing a second largest eigenvector, or an approximation thereof, for a normalized similarity matrix representing similarities between objects in the data set; ordering the objects in accordance with an increased ordering of elements of the eigenvector; and selecting a cut from a set of one or more cuts determined in accordance with said ordering of the objects, each of said one or more cuts indicating a way in which the objects are partitioned into two partitions; and performing merge phase processing using the hierarchy to determine one or more disjoint clusters of objects of the data set.