問題タブ [lemon-graph-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
164 参照

c++ - LEMON ライブラリで距離行列を効率的に評価する

私は自分のプロジェクトでLEMON ライブラリを使用していますが、特定のセット内の頂点間の完全な距離行列を評価するために LEMON ライブラリをどのように使用するのが最適か疑問があります。

ListDigraphしたがって、頂点のサブセットである大きなグラフ ( として表される) が与えられ、Sの任意の 2 つの頂点間のすべての最短経路を評価する必要があるとしSます。

これを行う最も簡単な方法はDijkstra、 の 2 つの頂点の組み合わせごとにアルゴリズムを実行することですSが、もちろん、これは効率の点で最善の方法ではありません。

私が考えたことの 1 つは、頂点 i から頂点 j までの 1 つのパスを両方とも で評価しS、次にProcessedMapS で他の頂点を検索することでした。1 つ見つかった場合、たとえば k とすれば、i から k までの距離が既にわかっています。 . これにより、アルゴリズムの呼び出し回数が減る可能性が高くなります。しかし、私はまだレモンにもっと良い解決策があるべきだと思います.

複数のソースを追加することは役に立ちますか? Dijkstraこの機能を使用したときのクラスの動作はまだよくわかりませんでした。

ありがとうございます=)

0 投票する
1 に答える
885 参照

c++11 - クランのレモンで「実行可能な変換はありません」が、g ++では有効です

現在、レモンライブラリをプロジェクトに取り入れようとしています。ほとんどの開発者は Windows を使用しており、MSVC でコンパイルしますが、(この部分では) gcc と clang でコンパイルするのは私が担当しています。

gcc が再現しないという clang のエラーに遭遇し、コードを削減することができました。

gcc では、エラーはありません。

しかし、クランでは:

:

  • SRC_ROOTBIN_ROOTTMP_ROOT読みやすくするために置き換えられます
  • スニペットのソース コードは機能しませんが、コンパイルする必要があります (実際の大きなコードを修正します)。
  • 実際のソース コードには C++11 の機能が本当に必要です。
  • gcc5
  • clang 3.7
  • lemon1.3.1

質問:

  • 旗を鳴らすのを忘れましたか?
  • レモンはclangと完全に互換性がありますか?
  • このエラーを解決するにはどうすればよいですか?
0 投票する
2 に答える
1241 参照

c++ - lemon SOPLEX、COIN、ILOGライブラリをインストール

Ubuntu 14.04 に Lemon をインストールしようとしていました。私は彼らのドキュメントの指示に従っていました。「cmake ..」コマンドで、次のようなエラーが発生しました

念のため、Cmake の更新とアップグレードを試みました。しかし、それは役に立ちませんでした。それで、これはライブラリがインストールされていないこと(COIN、ILOGなど)に関するものですか?インストール方法を教えてください。

0 投票する
1 に答える
208 参照

c++ - Omnet++ ネットワークからのレモン グラフ

omn​​et++ からネットワークのグラフを抽出し、ノードとリンクの情報をレモン グラフにフィードしようとしています。問題の部分は簡単に対処できます。コードの使用:

どういうわけか、ノードのリストを取得していますが、リンク情報も取得しようとしています。つまり、ノードとそれらの間のリンクも同様です。リンク情報を取得してレモングラフにフィードする方法と、コードで使用したアプローチの何が問題なのですか?

0 投票する
1 に答える
170 参照

c++ - C++ であるベクトルから別のベクトルにオブジェクトを移動する (LEMON ライブラリ)

LEMON ライブラリを使用しようとしていますが、実装しようとしているアルゴリズムで問題が発生しています。このアルゴリズムの考え方は、ノードのベクトルのベクトルがあり、ノードを特定の制限付きで別のベクトル (カラー クラス) に移動したいということです。私のアルゴリズムを実装するコードは次のとおりです。

この関数は、ノードが移動できなくなるまでループ内で呼び出されます。コードで私が抱えている主な問題は、ノードをあるベクトルから別のベクトルに実際に移動するセクションです。

消去関数が呼び出されているときにノードが分解されていると思うので、この部分は機能していないようです。この関数が呼び出される前後のノード ID のサンプルを次に示します。

ご覧のとおり、移動されたノードの ID が正しくありません (1 ではなく 32701)。どんな助けでも大歓迎です。