template <class VertexListGraph, class MutableGraph> void transpose_graph(const VertexListGraph& G, MutableGraph& G_T, const bgl_named_params<P, T, R>& params = all defaults)
この関数は有向グラフの転置を計算する。有向グラフ G = (V, E) の転置 は GT = (V, ET) で、ここに ET = {(v, u) in V x V: (u, v) in E} である。すなわち、GT は その全ての辺が入れ替えられた G である。アルゴリズムに渡されたグラフ G_T は G と同じ数の頂点を持っているはずであり、 辺はない。辺は G 中の各辺 (u,v) のために 次のように add_edge を呼ぶことによって transpose_graph() によって付け加えられるだろう。
boost/graph/transpose_graph.hpp
有向グラフ。グラフの型は Vertex List Graph のモデルでなければなら ない。OUT: const MutableGraph& G_T
転置されたグラフ。グラフの型は Mutable Graph のモデルでなければならない。
これはコピー中に元のグラフ中の頂点のプロパティを対応する頂点へとコピーする Binary Function である。IN: edge_copy(EdgeCopier ec)
デフォルト: グラフからのプロパティ・マップのアクセスに プロパティ・タグ vertex_all を使う vertex_copier<VertexListGraph, MutableGraph>。
これはコピー中に元のグラフ中の辺のプロパティを対応する辺へとコピーする Binary Function である。IN: vertex_index_map(VertexIndexMap i_map)
デフォルト: グラフからのプロパティ・マップのアクセスに プロパティ・タグ edge_all を使う edge_copier<VertexListGraph, MutableGraph>。
頂点の添え字マップの型は Readable Property Map のモデルでなければならず、G の頂点記述子を 0 から num_vertices(G) の整数にマップするはずである。UTIL/OUT: orig_to_copy(Orig2CopyMap c)
デフォルト: get(vertex_index, G)
これはコピー中に元のグラフの頂点を頂点へとマップする。
デフォルト: サイズ num_vertices(g) の出力グラフの頂点記述子型 の std::vector から作られた iterator_property_map で、添え字マップには i_map を用いる。
時間複雑性は O(V + E) である。
Copyright © 2000-2001 | Jeremy Siek, Indiana University (jsiek@osl.iu.edu) |
Japanese Translation Copyright © 2003 Takashi Itou
オリジナルの、及びこの著作権表示が全ての複製の中に現れる限り、この文書の複製、利用、変更、販売そして配布を認める。このドキュメントは「あるがまま」に提供されており、いかなる明示的、暗黙的保証も行わない。また、いかなる目的に対しても、その利用が適していることを関知しない。
このドキュメントの対象: Boost Version 1.29.0
最新版ドキュメント (英語)