次のステートメントを検討してください
有向グラフ-1:
a1->p1->b1
b1->p2->c1
b1->p3->c2
b1->p4->c3
有向グラフ-2:
a1->p4->c2
a1->p1->b1
a2->p2->b1
b1->p3->c1
a2->p5->b2
ここで、'a'、'b'、'c' は頂点で、すべての 'p' は辺です。方向は、ノード a からノード b/c です。グラフを描くと、http://www.slideshare.net/fvanvollenhoven/network-analysis-with-hadoop-and-neo4jのスライド 8 のグラフのようになります。
グラフ 1 にはノード b1 から始まるクラスターがあり、グラフ 2 には b1 で接続された 2 つのクラスターがあります。クラスターとは、1 つの頂点に接続されたすべての発信エッジと、そのグループ (発信エッジの) に含まれる頂点を意味します。既存の Java ベースのグラフ API のいずれかを使用して、これらのクラスターをすばやく簡単に見つける方法はありますか? また、クラスターに接続するエッジを見つけたいと思います (グラフ 1 の a1 p1 b1 やグラフ 2 の b1 p3 c1 など)。ここでいくつかのグラフ用語が欠落/誤用されていますか? Good Java グラフ アルゴリズム ライブラリを見ましたか? しかし、私が探しているものを正確に見つけられませんでした。
グラフは非常に小さく、約 20 の頂点と 10 のエッジです。
注:Neo4jタグがこれに適していると感じたため、Neo4jタグを追加しました. Neo4j 固有の質問: カウントが 1 より大きいエッジをすべて取得する方法はありますか? (現在サイファーを探索中)。
前もって感謝します。