NeighborNet is an algorithm for constructing
phylogenetic networks which is loosely based on the
neighbor joining algorithm. Like neighbor joining, the method takes a
distance matrix as input, and works by agglomerating clusters. However, the NeighborNet algorithm can lead to collections of clusters which overlap and do not form a
hierarchy, and are represented using a type of phylogenetic network called a split network. If the distance matrix satisfies the
Kalmanson combinatorial conditions then Neighbor-net will return the corresponding circular ordering. The method is implemented in the
SplitsTree package.