并查集rank的优化上一小节介绍了并查集基于size的优化,但是某些场景下,也会存在某些问题,如下图所示,操作union(4,2)。根据上一小节,size的优化,元素少的集合根节点指向元素多的根节点。操完后,层数变为4,比之前增多了一层,如下图所示:由此可知,依靠集合的size判断指向并不是完全正确的,更准确的是,根据两个集合层数,具体判断根节点的指向,层数少的集合根节点指向层数多的集合根节点,如下图所示,这就是基于rank的优化。我们在并查集的属性中,添加rank数组,rank[i]表示以i为根的集合所表示的树的层数。...privateint[]rank; //rank[i]表示以i为根的