Find a partition of the input similarity graph (or set of points) and: Split using bisection k-means Split using sparsest cut Recurse on each part Builds cluster-tree top-down