並查集中的路徑壓縮和按秩迭代

1.路徑壓縮 普通的並查集中我們僅僅是用一個函數找到了節點的根結點並用一個變量r記錄下來返回,之後直接與另一個節點比較看是否是在同一個連通分量上,   如圖,這樣的話查找的效率就很低,所以這個時候如果路徑壓縮的話就會明顯降低節點的深度,這在後續查找根節點的過程中會大大提升效率,如下圖: 這樣就把節點直接連接到根節點上,大大的減少了查找效率 先來看一下傳統並查集的代碼: int find(int x
相關文章
相關標籤/搜索