午前十時27分45秒2019年8月31日
学習マップを実現するために始めました
プログラムにおける図2つの表現(もちろん、他の表現の様々な)
①隣接行列$ G [N] [N] $ 0から$ $ N-1 $番号から$ $ N $頂点
\ langle V_I、v_j \ rangle Gエッジ\\ 0 \テキストまたは\端{ケース} $であれば$ G [i]は[J] = \ {}ケース1&\テキストを開始します
機能:.Ⅰ対角行列は全て0として符号化されなければならないが、自己ループを許可しません
Ⅱ。なし対称図対角線に沿っ。
マップを保存するための二次元配列との自由のためにあまりにも無駄なスペースです。
これは、$ \ FRAC {N(N + 1)} $ $を格納する{2} $一次元配列の長さを使用して(対角を含む)を記憶半分慣行を取ることができます
$ \ FRAC {N * NN} {2} + N = \ FRAC {N(N + 1)} {2} $:必要なスペースを計算します
$ \ FRAC {I(I + 1)} {2} + J $:$ G_ {ijは} $ $ A $次の目的に対応することです
\ langle V_I、j_i \ rangle重み付けネットワークがあれば$ G [I] [J] $値としてエッジとして定義することができるため
②隣接テーブル:$ G [N]のポインタの$配列は、行列の各行はリンクされたリストに対応する、唯一の非ゼロ要素が存在します