両方のノードが与えられたノードのリスト内にあるすべてのエッジを取得する方法を教えてください。 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. Java配列をノードリスト
- 3. DOMノードリストの作成
- 4. Firebaseの子ノードリストを読む
- 5. グラフ内の負のエッジ
- 6. OrientDBのshortestPath()の訪問先エッジを取得する
- 7. カラー画像の特定のエッジを取得する方法
- 8. rotateY()対エッジ内のmatrix3dトランジション
- 9. JUNGエッジの長さを取得するには?
- 10. undirected_dfs:エッジのベクトルを取得する方法
- 11. キューブのエッジ位置を取得しますか?
- 12. Python:複数(> 400)のバイナリイメージからエッジを高速に取得
- 13. AQL Arango - エッジを使用して頂点と近傍を取得
- 14. OrientDBはshortestPath()でエッジを取得します
- 15. OrientDBはdirection.OUTでエッジを取得できません
- 16. AForge.netエッジ検出 - エッジポイントを取得する方法?
- 17. グラフ内のエッジを訪問する
- 18. 画像内のエッジを見つける
- 19. ライブと静的なノードリスト
- 20. UI5ツリー表に拡張ノードリスト
- 21. networkxグラフ内の特定のノードにリンクされているすべてのエッジを取得
- 22. querySelectorAllは空のノードリストを返します
- 23. IDで2種類の要素のノードリストを取得するためのXPath構文
- 24. ノード内からエッジを開始する
- 25. Dseグラフ - 2つの頂点の間のすべてのエッジを取得
- 26. Android:丸いエッジのビューが別の丸いエッジのビュー内で拡大する
- 27. コード内のデータを取得
- 28. テキストファイル内のバージョンを取得
- 29. PreferencesFragment内のフラグメントインスタンスを取得
- 30. jQuery:idの内容を取得
私はダウン投票についての手がかりを教えてください? – sovon
少しヒント:「私はそれを望んでいません。どうすれば入手できますか?」また、これは:https://stackoverflow.com/help/how-to-ask – BoboDarph
私は理解していません。これはそれほど控えめですか?もしそうなら、私の見解は、「私がしたいこととしたくないことを指定するためにその行を書きました。私は本当に明確にすべきだと思っていました。ありがとう – sovon