問題タブ [directed-graph]

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 投票する
5 に答える
3210 参照

c++ - C++ から呼び出し可能な優れたグラフ レイアウト ライブラリはありますか?

(有向) グラフは、有限オートマトンを表します。これまで、私のテスト プログラムは、テスト用にドット ファイルを書き出していました。これは、回帰テスト (検証済みの出力ファイルを subversion に保持し、変更があったかどうかを確認する) と視覚化の両方に適しています。ただし、いくつかの問題があります...

基本的に、C++ から呼び出し可能で、状態と遷移のレイアウトを計画するが、描画は私に任せるものが必要です。つまり、好きなように描画して GUI (wxWidgets) ウィンドウに描画できるものです。

また、商用利用を許可するライセンスも必要です。現時点では必要ありません。オープン ソースとしてリリースすることも十分考えられますが、ATM のオプションを制限したくありません。

GraphViz の問題点は、(1) Windows でのソースからのビルドに関する警告、(2) レンダリングと解析のためのすべての不要な依存関係、(3) レイアウト専用の文書化された API の (推定) 欠如です。

基本的に、状態 (外接する四角形のサイズ) とトランジションを指定し、各トランジションの状態とウェイポイントの位置を読み取り、それらの座標に基づいて自分で描画できるようにしたいと考えています。トランジションの注釈をどのように処理する必要があるかはよくわかりませんが、それらの境界ボックスのサイズを指定し、それらをトランジションに関連付け、位置を読み取るための何らかの準備が必要です。

これらの要件を処理できるライブラリを知っている人はいますか?

私は必ずしも自分で何かを実装することに反対しているわけではありませんが、この場合、可能であれば避けたいと思います。

0 投票する
2 に答える
443 参照

c - 有向非加重グラフC

隣接リストを作成し、深さ優先探索を実行し、幅優先探索を実行し、トポロジカルソートを実行するプログラムをCで作成することを計画しています。
この主題に関する情報はCでどこで入手できますか?
どんな助けでも大歓迎です

0 投票する
2 に答える
1155 参照

c# - c# - 有向グラフに最適な永続化アプローチ/ツール/ライブラリとは

C# の有向グラフに最適な永続化アプローチ/ツール/ライブラリとは何ですか。有向グラフ (ノードとリレーションシップ、必要に応じて頂点とエッジなど) のクラス モデルがあると仮定していますが、SQL データベースへの永続化に関して何をお勧めしますか? (または、2番目の質問が必要な場合は、SQLデータベースを要件として指定しない場合)

たとえば、単純に Relationships テーブルと Nodes テーブルを使用しようと考えていました。

0 投票する
2 に答える
9936 参照

java - Java での強制指向レイアウトの実装

力指向のグラフ レイアウト アルゴリズムの Java 実装を探し回っていますが、これまでのところ成果はありませんでした。どんな助けでも大歓迎です:)

0 投票する
2 に答える
7670 参照

.net - GraphSharp .Net グラフ レイアウト エンジン

明らかに素晴らしい GraphSharp ライブラリを使用したいのですが、プロジェクトにはドキュメントがありません。

具体的には、レイアウト エンジンの使用に興味があり、WPF コントロールには興味がありません。特定のグラフとレイアウト アルゴリズムのレイアウト (ノードの位置) を計算したいだけです。

GraphSharp の使用方法に関するアドバイス、ヒント、リンクはありますか?

0 投票する
3 に答える
1958 参照

algorithm - 有向巡回グラフ (F#) のデータ構造とアルゴリズム

アセンブリ参照が有向非巡回グラフである必要があるアプリケーションを分析しようとしていますが、そうではありません。サブアセンブリが 1 つのサブサブアセンブリの異なるバージョンを参照するという関連する問題もあります (エッシャーを考えてください... ) 。

私がやりたいのは、アセンブリとサブアセンブリの各ペアを分析し、どこが間違っているかを把握することです。

これに適したデータ構造とは何かについてのガイダンスが必要です。不変のものを構築できるかどうかはあまりわかりませんが、内部で変更可能にしてから、最後に不変に変換してもかまいません。

問題のもう 1 つの部分は、データ構造を埋めるためにどのようなアルゴリズムを使用する必要があるか、またその後で問題を「分析」するために使用する必要があるということです。

0 投票する
2 に答える
1218 参照

graph - すべてのノードのDFSは、有向グラフですべてのサイクルを提供しますか

有向グラフですべてのサイクルを見つけたい。深さ優先探索を開始すると、1つのノードからいくつかのサイクルが検出されます(バックエッジの検出)。したがって、グラフ内のすべてのノードにdfsを適用しました(つまり、ルートが異なるノードになるたびに)。これを使用して(重複するものを排除することにより)すべてのサイクルを取得できます。しかし、これがすべてのグラフで機能するかどうか、そしてこれが正しいアプローチであるかどうかはわかりません。これがすべての状況で機能するかどうかを誰かが私に提案できますか?

ありがとう

0 投票する
2 に答える
1579 参照

algorithm - 特定のエッジのセットを含むスパニングツリーの総数を計算する

私は次のアプローチを試しました:

まず、指定されたエッジのセット内のすべてのエッジに対してエッジ収縮を実行して、修正されたグラフを作成します。

次に、修正されたグラフから、行列ツリーの定理を使用して、スパニングツリーの総数を計算します。

この方法が正しいかどうか、そして他にもっと良い方法があるかどうか知りたいです。

0 投票する
3 に答える
2694 参照

python - 循環有向グラフでの複数サイクルの検出

複数のサイクルを含む有向非巡回グラフがあり、ダイグラフに存在する各サイクルを検出(および一覧表示)する方法が必要です。

グラフはここで見ることができます:http://img412.imageshack.us/img412/3327/schematic.gif

これは、Pythonスクリプトをデバッグするためにまとめたダミーグラフです。サイクルが含まれています:

[n13, n14], [n6, n8, n15, n16, n7], [n6, n8, n9, n7]

アルゴリズムは、最小のものだけでなく、最初に遭遇したものだけでなく、有向グラフのすべてのサイクルを検出する必要があります。

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

algorithm - 循環有向グラフの走査

循環有向グラフがあります。リーフから始めて、各ノードに接続されているデータを、そのノードから到達可能なすべてのノードに下流に伝播したいと思います。特に、サイクルが安定するまで、到達したサイクルの前後でデータをプッシュし続ける必要があります。

これはストックグラフの走査問題であると完全に確信しています。ただし、適切なアルゴリズムを見つけるのにかなり苦労しています---いくつかの重要な検索キーワードが欠落していると思います。

私が自分の半ばのO(n ^ 3)アルゴリズムを書き込もうとする前に、誰かが私に適切な解決策を教えてもらえますか?そして、この特定の問題は何と呼ばれていますか?