该项目完整实现了ROCK (RObust Clustering using linKs) 算法的核心逻辑,旨在解决分类数据(Categorical Data)和布尔数据的聚类问题。主要功能涵盖了算法的全过程:首先,根据输入的数据集和设定的相似度阈值(theta),计算数据点之间的Jaccard系数以确定邻居关系;其次,构建链接矩阵(Link Matrix),通过计算两个数据点共同邻居的数量来衡量其紧密程度,这是ROCK算法区别于传统基于距离算法的核心特征;再次,实现层次凝聚聚类策略,定义并计算簇合并的优度量度(Goodness Measure),该量度综合考虑了簇内链接与簇间链接的比例;最后,执行迭代合并过程,每次选择优度最高的两个簇进行合并,并高效更新剩余相关簇的链接数和优度值,直到达到预期的聚类中心数量。该算法特别在处理高维稀疏数据及具有噪声的数据集时表现出优异的鲁棒性。