LeetCode684冗餘連線

2021-08-17 10:22:08 字數 1165 閱讀 2498

在本問題中, 樹指的是乙個連通且無環的無向圖。

輸入乙個圖,該圖由乙個有著n個節點 (節點值不重複1, 2, ..., n) 的樹及一條附加的邊構成。附加的邊的兩個頂點包含在1到n中間,這條附加的邊不屬於樹中已存在的邊。

結果圖是乙個以組成的二維陣列。每乙個的元素是一對[u, v],滿足u < v,表示連線頂點uv無向圖的邊。

返回一條可以刪去的邊,使得結果圖是乙個有著n個節點的樹。如果有多個答案,則返回二維陣列中最後出現的邊。答案邊[u, v]應滿足相同的格式u < v

示例 1:

輸入:[[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

注意:

更新(2017-09-26):

我們已經重新檢查了問題描述及測試用例,明確圖是無向圖。對於有向圖詳見冗餘連線ii。對於造成任何不便,我們深感歉意。

並查集,new乙個陣列,用來儲存各個節點的根節點(這裡(1,2)是說2是1的根節點),遍歷edges陣列時,查詢兩個陣列的根節點是否相等,相等則證明有環,則返回當前陣列。

class solution 

}return null;

}public static int find(int x, int nums)

return x;

}}

leetcode 684冗餘連線

在本問題中,樹指的是乙個連通且無環的無向圖。輸入乙個圖,該圖由乙個有著n個節點 節點值不重複1,2,n 的樹及一條附加的邊構成。附加的邊的兩個頂點包含在1到n中間,這條附加的邊不屬於樹中已存在的邊。結果圖是乙個以邊組成的二維陣列。每乙個邊的元素是一對 u,v 滿足u v,表示連線頂點u和v的無向圖的...

LeetCode 684 冗餘連線

在本問題中,樹指的是乙個連通且無環的無向圖。輸入乙個圖,該圖由乙個有著n個節點 節點值不重複1,2,n 的樹及一條附加的邊構成。附加的邊的兩個頂點包含在1到n中間,這條附加的邊不屬於樹中已存在的邊。結果圖是乙個以邊組成的二維陣列。每乙個邊的元素是一對 u,v 滿足 u v,表示連線頂點u 和v的無向...

LeetCode 684 冗餘連線

原題目 思路 並查集,每次檢查邊的兩個頂點是否屬於同乙個集合,如果是,則返回 形成了環 如果不是,將這兩個頂點併入到乙個集合之中,依次檢查所有的邊。可以同時考慮路徑壓縮,每次合併的時候都合併到size大的節點。class unionfind int find int p return p void ...