684. 冗餘連線
在本問題中, 樹指的是乙個連通且無環的無向圖。示例 1:輸入乙個圖,該圖由乙個有著n個節點 (節點值不重複1, 2, ..., n) 的樹及一條附加的邊構成。附加的邊的兩個頂點包含在1到n中間,這條附加的邊不屬於樹中已存在的邊。
結果圖是乙個以邊組成的二維陣列。每乙個邊的元素是一對[u, v] ,滿足 u < v,表示連線頂點u 和v的無向圖的邊。
返回一條可以刪去的邊,使得結果圖是乙個有著n個節點的樹。如果有多個答案,則返回二維陣列中最後出現的邊。答案邊 [u, v] 應滿足相同的格式 u < v。
輸入: [[1,2], [1,3], [2,3]]輸出: [2,3]
解釋: 給定的無向圖為:
1/ \
2 - 3
示例 2:
輸入: [[1,2], [2,3], [3,4], [1,4], [1,5]]輸出: [1,4]
解釋: 給定的無向圖為:
5 - 1 - 2
| |
4 - 3
注意:
輸入的二維陣列大小在 3 到 1000。基本思路:並查集,如果存在環,那麼,新添入邊的兩個端點的根必然相等。二維陣列中的整數在1到n之間,其中n是輸入陣列的大小。
更新(2017-09-26):
我們已經重新檢查了問題描述及測試用例,明確圖是無向 圖。對於有向圖詳見冗餘連線ii。對於造成任何不便,我們深感歉意。
vectorparent,psize;
int find(int x)
return parent[x];
}void init(int n)
else
return true;
}vectorfindredundantconnection(vector>& edges) ;
}return ;
}
684 冗餘連線
在本問題中,樹指的是乙個連通且無環的無向圖。輸入乙個圖,該圖由乙個有著n個節點 節點值不重複1,2,n 的樹及一條附加的邊構成。附加的邊的兩個頂點包含在1到n中間,這條附加的邊不屬於樹中已存在的邊。結果圖是乙個以邊組成的二維陣列。每乙個邊的元素是一對 u,v 滿足u v,表示連線頂點u和v的無向圖的...
684 冗餘連線
在本問題中,樹指的是乙個連通且無環的無向圖。輸入乙個圖,該圖由乙個有著n個節點 節點值不重複1,2,n 的樹及一條附加的邊構成。附加的邊的兩個頂點包含在1到n中間,這條附加的邊不屬於樹中已存在的邊。結果圖是乙個以邊組成的二維陣列。每乙個邊的元素是一對 u,v 滿足 u v,表示連線頂點u 和v的無向...
684 冗餘連線
684.冗餘連線 樹可以看成是乙個連通且 無環 的 無向 圖。請找出一條可以刪去的邊,刪除後可使得剩餘部分是乙個有著n個節點的樹。如果有多個答案,則返回陣列edges中最後出現的邊。示例 1 輸入 edges 1,2 1,3 2,3 輸出 2,3 示例 2 輸入 edges 1,2 2,3 3,4 ...