両方のノードが与えられたノードのリスト内にあるすべてのエッジを取得する方法を教えてください。 G.edges([list_of_nodes])
は、各エッジの少なくとも1つのノードがlist_of_nodes
にあるすべてのノードを返します。私はそれを望んでいない。どうすれば入手できますか?ノードリスト内のエッジを取得
0
A
答えて
2
すでに見つかったすべてのエッジをループし、両方のノードがノードのリストにあるかどうかをテストできますが、ノードのリストが大きい場合は最適ではありません。リストに要素が含まれているかどうかを確認するには、リストを反復処理する必要があります。したがって、各エッジの平均エッジ数は2*len(list)/2
です。各ノードのチェック数はlen(list)/2
です。エッジの数がlen(list)
に比例すると仮定すると、これには2次の時間があります。
edges = [(u,v) for u,v in G.edges(list_of_nodes) if u in list_of_nodes and v in list_of_nodes]
より効率的な方法は、ノードがリストではなくセットに含まれているかどうかをテストします。セットは、要素が含まれているかどうかを非常に高速に確認できます。テストごとにほとんどO(1)
です。したがって、完全なものは線形時間で実行されます。
set_of_nodes = set(list_of_nodes)
edges = [(u,v) for u,v in G.edges(set_of_nodes) if u in set_of_nodes and v in set_of_nodes]
関連する問題
- 1. グラフのエッジを取得する
- 2. エッジのないノードの取得
- 3. ノードリストで 'for ... of'を使用すると、エッジ15がスローされる
- 4. Firebaseデータベースからすべての子ノードリストの値を取得する方法は?
- 5. Java配列をノードリスト
- 6. DOMノードリストの作成
- 7. Firebaseの子ノードリストを読む
- 8. グラフ内の負のエッジ
- 9. OrientDBのshortestPath()の訪問先エッジを取得する
- 10. カラー画像の特定のエッジを取得する方法
- 11. rotateY()対エッジ内のmatrix3dトランジション
- 12. Python:複数(> 400)のバイナリイメージからエッジを高速に取得
- 13. undirected_dfs:エッジのベクトルを取得する方法
- 14. JUNGエッジの長さを取得するには?
- 15. キューブのエッジ位置を取得しますか?
- 16. Neo4jは1次ノード間のエッジを取得します
- 17. グラフツールライブラリでグラフのエッジ値を取得する方法は?
- 18. AQL Arango - エッジを使用して頂点と近傍を取得
- 19. OrientDBはshortestPath()でエッジを取得します
- 20. Graphvizでノードとエッジ数を取得する方法
- 21. スウィフトでエッジから距離を取得3
- 22. Gremlinクエリーでエッジが2である頂点を取得する
- 23. OrientDBはdirection.OUTでエッジを取得できません
- 24. AForge.netエッジ検出 - エッジポイントを取得する方法?
- 25. 画像内のエッジを見つける
- 26. グラフ内のエッジを訪問する
- 27. networkxグラフ内の特定のノードにリンクされているすべてのエッジを取得
- 28. ライブと静的なノードリスト
- 29. UI5ツリー表に拡張ノードリスト
- 30. laravel goutteノードリストが空です
私はダウン投票についての手がかりを教えてください? – sovon
少しヒント:「私はそれを望んでいません。どうすれば入手できますか?」また、これは:https://stackoverflow.com/help/how-to-ask – BoboDarph
私は理解していません。これはそれほど控えめですか?もしそうなら、私の見解は、「私がしたいこととしたくないことを指定するためにその行を書きました。私は本当に明確にすべきだと思っていました。ありがとう – sovon