這是參照書算法(Fouth版)由羅伯特·塞奇威克&凱文·韋恩聯盟獲取廣告效果的解釋
對於聯盟找到實現中,發現代碼和工會給出(第222頁)作爲:
public int find(int p)
{
return id[p];
}
public void union(int p, int q)
{
// Put p and q into the same component.
int pID = find(p);
int qID = find(q);
// Nothing to do if p and q are already in the same component.
if (pID == qID) return;
// Rename p’s component to q’s name.
for (int i = 0; i < id.length; i++)
if (id[i] == pID) id[i] = qID;
count--;
}
然後如下命題:
命題F.快速查找的算法使用每個 調用一個數組訪問找到()和betwee對每個組合了兩個組件的union()調用每個調用n + 3和2N + 1的數組。
我想了解我們是怎麼實際上是在N + 3和2N + 1到達。我對N + 3有一些想法,但對2N + 1不瞭解。請幫忙。
嗨@coder,我幾乎可以完全理解它。但是,你能舉個例子(這兩種情況)並解釋一下嗎? – Shikhar
增加了一個例子,希望它有幫助! – coder