## 2 Related Work
### Hierarchical Clustering  
Hierarchical clustering is another significant analytical technique in unsupervised clustering algorithms, which aims to analyze the similarity or dissimilarity between clusters according to the hierarchical structure, mainly including split hierarchical clustering and cohesive hierarchical clustering. Among them, split hierarchical clustering splits all data points as a cluster by utilizing the dissimilarity, while cohesive hierarchical clustering measures the similarity between the initial clusters to be merged and merges them step by step. This paper focuses on cohesive hierarchical clustering.  
[PERSON] et al. [27] proposed a cohesive hierarchical clustering algorithm, a novel clustering algorithm combining mutual neighboring and hierarchical approaches using a new selection criterion (KdMutual) driven by the number of clusters in three steps: the first step identifies core subclusters using mutual neighborhoods, the second step deals with outliers, and the last step selects the initial clusters to construct the resulting partition using an ordering criterion. KdMutual combines the features of density peaks as well as structural similarities and is suitable for high-dimensional datasets. In order to avoid the influence of outliers on the clustering results, [PERSON] et al. [15] proposed a noise-removing hierarchical clustering algorithm named the hierarchical clustering algorithm based on noise removal (HCBNR), which is capable of discovering arbitrarily shaped clusters. The algorithm initially removes noise points based on natural neighbors, followed by constructing a mutual nearest neighbor graph with the remaining points to partition into sub-clusters; eventually, sub-clusters are iteratively merged based on their similarity measures until the desired number of clusters is achieved. [PERSON] et al. [28] proposed an efficient hierarchical clustering algorithm that uses a scalable sample set kernel to measure the similarity between existing clusters in the clustering tree and new samples in the data stream. Moreover, the hierarchical structure can be automatically updated while iteratively merging clusters. [PERSON] et al. [29] proposed a hierarchical clustering algorithm, a novel hierarchical clustering algorithm based on density-distance cores (HCDC), based on the density-distance kernel for variable--density clustering, which first selects a density-distance representative point for each data point from candidate points, then selects a density-distance kernel from all the density-distance representative points and completes the clustering by utilizing the proposed new distance to complete the clustering. The experimental results prove that HCDC has good performance on complex structured datasets, as well as variable-density datasets. [PERSON] et al. [30] proposed an algorithm that combines a tree aggregation method with hierarchical clustering, which merges the clusters by aggregating the tree structures that have the same cotyledons.  
Overall, unlike the similarity measures proposed by the hierarchical clustering algorithms described above, the similarity measure proposed in this paper takes into account the structural composition between clusters. For subcluster pairs with a large number of shared nearest neighbors, they are usually considered to belong to the same cluster. Moreover, the similarity metric based on shared k-nearest neighbors can solve the problems of high overlapping between clusters and ambiguous boundaries.