• 締切済み

グラフ

掲載した画像のグラフについてです。 このとき、隣接行列は、 |00000| |00010| |10000| |00100| |00000| ↑5行5列のことです。 また、可到達行列は、 |00000| |10110| |01010| |10100| |10110| ↑5行5列のことです。 でいいんでしょうか? また、強連結成分は、{2,3,4}でしょうか?

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

隣接行列はそれで OK. 可到達行列はすべての対角成分が 1 になりませんか? 強連結成分は定義をきちんと理解しておかないと分かりづらいんだけど {1}, {2, 3, 4}, {5} の 3つです. {1} とか {5} が強連結成分であることに気づかない可能性が高い.

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

つまり, 隣接行列の全ての成分を加えると辺の本数になるはずですよね. そう考えたら, その「隣接行列」が間違っていることはほぼ一瞬でわかるはずです. 可到達行列でも, 例えば 2→5 は到達可能だから (2, 5) 成分は 1 になるはずです. 強連結成分は... まあ, 定義がわからんとわからんかも.

kenzoeko
質問者

補足

隣接行列は、 |00000| |00010| |11000| |00101| |00000| 可到達行列は、 |00000| |10111| |11011| |11101| |00000| ですか? 強連結成分は、任意の x, y に対して有向道 x --> y が存在することですよね。だったら、{2,4,3,1}、{3,2,4,5}、{3,2,4}でしょうか?お願いです。Tacosanさん、正解を教えてください。ヒントでもいいです。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

隣接行列や可到達行列の定義は理解できてますか? 書いてみてください. {2, 3, 4} は強連結成分の 1つですが, 他にもあります.

kenzoeko
質問者

補足

隣接行列は、ある頂点 v と w の間の枝の本数を行列の (v, w) 成分に割り当てるグラフ、可到達行列は、直接、間接の因果関係のすべてをあらわす行列です。強連結成分については、イマイチわかっていません・・・すいません。

関連するQ&A

  • 可到達行列について教えてください!

    自分の中では、 「隣接行列に単位行列を足したものを累乗していき、いくら累乗しても変わらなくなったものが可到達行列。そうなるまでにN回累乗したとすると、行列が1の成分のところにはN回以下の移動で行けて、0のところは何回移動しても行けない」 と整理していたんですが、 授業で、テニス選手の対戦成績表が与えられて、『強さの順序を可到達行列から求めよ』という問題が出され、対応できないことがわかりました。 どう解けばいいんでしょうか。困っています!

  • グラフの問題

    正しくないものを選ぶ問題なのですが、 (1)有限グラフのすべての頂点の次数が奇数であるとき、頂点の数は偶数である。 (2)連結グラフから分離辺を除いたグラフは、2つの連結成分をもつグラフである。 (3)連結グラフから分離辺を集めて得られるグラフの連結成分は樹木である。 (4)組み合わせグラフは平面グラフである。 (5)完全グラフは組み合わせグラフである。 (4)(5)は正しいのはわかるのですが、(1)~(3)のどの部分がまちがっているのかわかりません。 教えてください。

  • グラフでこういう表し方できますか?

    グラフでA,B列にデータがあり、そのグラフを右に出したいのですが、 横棒グラフで表そうとするとうまく行に棒がくるようにできなくて困っています。 添付画像のようなイメージでしあげたいのですが、方法はないでしょうか?

  • 強連結成分分解

    連接行列のみ与えられたときに、強連結成分を返すアルゴリズムを作成したいのですが。。 私自身はC++のみ少し理解できる程度でしかないのです(;口;) しかし、いろいろ調べてみても、グラフについてはほとんどC言語で書かれているものが多く、理解できません。 もし、よろしければ、C++でどのように表現していったらいいか指導をお願いします。 もし、無知識なトンチンカンな質問だったりしたら、ごめんなさい。 プログラム初心者なので、どこから考えていいかもわからなくて…。 おねがいします。

  • グラフを分割する

    無向グラフを適当に分割する方法に、2連結成分に分割する、という方法があることを知ったのですが、何か実現できるプログラムはあるでしょうか? よろしくお願いいたします。

  • グラフの証明を教えてください

    背理法の証明で 連結で、全ての頂点次数が偶数であり、オイラーツアーを持たないグラフがあるとするときの そのうち最も辺の少ないグラフをGとします Gの中のツアーで中で、最も辺の数が多いものをCとします。 そのときGからCの辺をすべて取り除いたグラフの連結成分Hがあるとしたとき Hの各頂点の次数は偶数である。 この証明を教えてください。

  • Excelでグラフ…

    Excelでグラフを作りたいんですが、既に入力してあるデータじゃないとグラフは作れないですか? 例えば、1行目と2行目の1列目には入力してあるけど2列目以降は空白。だけど、今後入力する。入力するたびにグラフが出来るようにすることは出来ないですか? Wiiーfitの体重のグラフみたいなやつが作りたいんです…

  • 複雑な行列式から固有値を求める

    こんばんは!固有値が求められないので質問させていただきました。 |α 0 β 0 0 0| |0 α β 0 0 0| |β β ω 0 0 β| |0 0 0 α 0 β| |0 0 0 0 α β| |0 0 β β β ω| という6行6列の行列があります。 行列全体をβで割って(α-λ)/β=X(λ:固有値) などとおければ、簡単に固有値が求められそうな行列なのですが、 3行3列目と6行6列目にωがあることによって、対角成分の計算を綺麗に行えません。誰か良い方法がありましたら、よろしくお願いします。

  • 複素n次正方行列に関する質問です。

    λ∈Cに対して次のような複素n次正方行列N, J[λ](n)を考えます。 Nは、1行2列目、2行3列目、3行4列目、……、(n-1)行n列目の成分が全て1になっていて、残りの成分が全て0の行列です。(つまり単位行列の対角成分を右に一個ずつずらした感じです) J[λ](n)は、対角成分が全てλで、1行2列目、2行3列目、3行4列目、……、(n-1)行n列目の成分が全て1になっていて、残りの成分は全て0の行列です。 したがって、J[λ](n)=λE+N が成り立ちます。それで、k≧nという条件の下で、J[λ](n)のk乗を求めたい場合、 {J[λ](n)}^k=Σ【r=0→k】kCr(λE)^(k-r)*N^r となりますが、このときの1行n列目の成分がどうなるのかわからないので教えてください。 たぶん、kC(k-n)*λ^nか、kC(n-1)*λ^(k-n+1)のどちらかだと思います。

  • 行列の問題

     N行N列の行列A   行列Aの成分は成分を(行,列)で表すと、(1,1)=(N,N)=2、(1,2)=(1,N)=(2,1)=(N,1)=(N-1,N)=(N,N-1)-1  この行列の固有値と固有ベクトルを求めたいのですが、どうすればいいかわかりません。どなたか教えてください。