グラフ g の連結成分を与える.
ConnectedComponents[g,{v1,v2,…}]
頂点 v1, v2, …の少なくとも1つを含む連結成分を与える.
ConnectedComponents[g,patt]
パターン patt にマッチする頂点を含む連結成分を与える.
ConnectedComponents[{vw,…},…]
規則 vw を使ってグラフ g を指定する.
ConnectedComponents
グラフ g の連結成分を与える.
ConnectedComponents[g,{v1,v2,…}]
頂点 v1, v2, …の少なくとも1つを含む連結成分を与える.
ConnectedComponents[g,patt]
パターン patt にマッチする頂点を含む連結成分を与える.
ConnectedComponents[{vw,…},…]
規則 vw を使ってグラフ g を指定する.
詳細
- ConnectedComponentsは各成分 ciが頂点のリストとして与えられる成分{c1,c2,…}のリストを返す.
- 無向グラフで頂点 u から 頂点 v への経路が存在する場合,頂点 u と頂点 v は同じ成分に含まれる.
- 有向グラフで頂点 u から 頂点 v へと頂点 v から頂点 u への有向経路が存在する場合,頂点 u と頂点 v は同じ成分に含まれる.
- 有向グラフの場合は強連結成分が計算される.
- 無向グラフの場合,成分はその長さで並べられ,最長の成分が先頭に置かれる.
- 有向グラフの場合,成分{c1,c2,…} は ciから ci+1,ci+2等への辺が存在しないような順序で与えられる.
- ConnectedComponentsは,無向グラフ,有向グラフ,多重グラフ,混合グラフに用いることができる.
例題
すべて開く すべて閉じる例 (1)
スコープ (8)
ConnectedComponentsは無向グラフに使うことができる:
ConnectedComponents[[image]]ConnectedComponents[[image]]ConnectedComponents[[image]]ConnectedComponents[[image]]ConnectedComponents[{3 -> 1, 1 -> 5, 2 -> 4, 2 -> 6, 3 -> 5, 4 -> 6}]ConnectedComponents[[image], {1, 7}]ConnectedComponents[[image], v_ ? EvenQ]ConnectedComponentsは大きいグラフに使うことができる:
RandomGraph[{10000, 20000}];ConnectedComponents[%]//Shallow//Timingアプリケーション (4)
g = DirectedGraph[GridGraph[{10, 30}], "Random", VertexSize -> 0.6, GraphHighlightStyle -> "DehighlightFade"];HighlightGraph[g, Select[ConnectedComponents[g], Length[#] > 1&]]蓮池のカエルは,25枚の蓮の浮葉から浮葉へ跳び移るために,1.5フィートジャンプすることができる.蓮の葉の密度とSpatialGraphDistributionを使って,カエルのジャンプのネットワークをモデル化する:
lilyDensity = MixtureDistribution[{1, 1, 1}, {BinormalDistribution[{0, 0}, {1, 1}, 0], BinormalDistribution[{-1, 4}, {1, 1}, -1 / 2], BinormalDistribution[{4, 4}, {1, 1}, 1 / 3]}];lilyPond = SpatialGraphDistribution[25, 1.5, lilyDensity];g = RandomGraph[lilyPond, VertexShape -> [image], VertexSize -> {"Scaled", 0.1}, EdgeStyle -> Opacity[0], Background -> Hue[0.6, 0.8, 0.4], ImageSize -> 150]Length[First[ConnectedComponents[g]]]シミュレーションを使って同様の池についての蓮の浮葉の最大集合の大きさを求める:
largestIsland = GraphPropertyDistribution[Length[First[ConnectedComponents[g]]], glilyPond];RandomVariate[largestIsland, 10]すべての浮葉を訪れるためにカエルが泳がなければならない回数を求める:
Length[ConnectedComponents[g]] - 1frogSwims = GraphPropertyDistribution[Length[ConnectedComponents[g]] - 1, glilyPond];RandomVariate[frogSwims, 10]行列A〚p-1,p〛がブロック三角行列となるような置換pを求める:
A = (| | | | | |
| -- | -- | -- | -- | -- |
| 0 | 0 | a2 | 0 | 0 |
| 0 | 0 | 0 | 0 | a3 |
| a5 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | a4 | 0 |
| 0 | a1 | 0 | 0 | 0 |);AdjacencyGraph[Map[Boole[!PossibleZeroQ[#]]&, A, {2}]]ConnectedComponents[%]p = Flatten[%]A[[InversePermutation[p], p]]//MatrixForm特性と関係 (4)
WeaklyConnectedComponentsを使って有向グラフの弱連結成分を得る:
g = Graph[{12, 23, 31, 34, 45, 35, 67}]WeaklyConnectedComponents[g]ConnectedComponents[UndirectedGraph[g]]ConnectedGraphQを使ってグラフが連結されているかどうかを調べる:
RandomGraph[{10, 8}]ConnectedGraphQ[%]g = GridGraph[{2, 3}]ConnectedGraphQ[g]ConnectedComponents[g]//Length
個の頂点を持ち辺の数が
のグラフには少なくとも
個の成分がある:
g = RandomGraph[{10, 8}]Length[ConnectedComponents[g]] ≥ VertexCount[g] - EdgeCount[g]関連するガイド
-
▪
- グラフの成分と連結性 ▪
- グラフとネットワーク ▪
- グラフ上の計算 ▪
- ソーシャルネットワーク分析 ▪
- クラスタ解析
テキスト
Wolfram Research (2010), ConnectedComponents, Wolfram言語関数, https://reference.wolfram.com/language/ref/ConnectedComponents.html (2015年に更新).
CMS
Wolfram Language. 2010. "ConnectedComponents." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2015. https://reference.wolfram.com/language/ref/ConnectedComponents.html.
APA
Wolfram Language. (2010). ConnectedComponents. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ConnectedComponents.html
BibTeX
@misc{reference.wolfram_2026_connectedcomponents, author="Wolfram Research", title="{ConnectedComponents}", year="2015", howpublished="\url{https://reference.wolfram.com/language/ref/ConnectedComponents.html}", note=[Accessed: 06-July-2026]}
BibLaTeX
@online{reference.wolfram_2026_connectedcomponents, organization={Wolfram Research}, title={ConnectedComponents}, year={2015}, url={https://reference.wolfram.com/language/ref/ConnectedComponents.html}, note=[Accessed: 06-July-2026]}