[解決済み] DFSとBFSの時間計算量がともにO( V + E )であるのはなぜか?
2022-03-08 18:58:09
質問
BFSの基本的なアルゴリズムです。
set start vertex to visited
load it into queue
while queue not empty
for each edge incident to vertex
if its not visited
load into queue
mark vertex
だから、時間的な複雑さは、そうだろうと思います。
v1 + (incident edges) + v2 + (incident edges) + .... + vn + (incident edges)
ここで
v
は頂点
1
から
n
まず、私が言ったことは正しいのでしょうか? 次に、この
O(N + E)
と、その理由を直感的に教えていただけると本当に助かります。 ありがとうございます。
どのように解決するのですか?
あなたの合計
v1 + (incident edges) + v2 + (incident edges) + .... + vn + (incident edges)
は次のように書き換えることができます。
(v1 + v2 + ... + vn) + [(incident_edges v1) + (incident_edges v2) + ... + (incident_edges vn)]
で、最初のグループは
O(N)
であるのに対し、もう一方は
O(E)
.
関連
-
[解決済み] ループ不変量によるマージソートの正しさの証明 (初期化 , 保守 , 終了)
-
[解決済み] Breadth First Searchの時間複雑性解析
-
[解決済み】画像処理。コカ・コーラ缶」認識のためのアルゴリズム改良
-
[解決済み】アルゴリズムの時間複雑性を求めるには?
-
[解決済み】ループ不変量って何?
-
[解決済み】2つの整数を1つにマッピングする、一意的かつ決定論的な方法
-
[解決済み】整数の流れから実行中央値を求める
-
[解決済み】遺伝的アルゴリズム/遺伝的プログラミングの良い解決例とは?[クローズド]
-
[解決済み】動的計画法を用いて,最も長く増加する部分列を決定する方法とは?
-
[解決済み】ポリゴンの膨張・収縮(オフセット、バッファリング)のためのアルゴリズム
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] グラフの隣接リスト表現の空間複雑性
-
[解決済み] 整数が [1,100] の範囲にあるとき、100万個の整数を最も速くソートする方法は何ですか?
-
[解決済み] ループ不変量によるマージソートの正しさの証明 (初期化 , 保守 , 終了)
-
[解決済み] Breadth First Searchの時間複雑性解析
-
[解決済み] バックトラックアルゴリズムの時間計算方法は?
-
[解決済み] O(log n)とは具体的にどういう意味ですか?
-
[解決済み】与えられた和になるように数字の組み合わせの可能性を探す
-
[解決済み】円の円周上にある点を計算するには?
-
[解決済み】ポリゴンの膨張・収縮(オフセット、バッファリング)のためのアルゴリズム
-
[解決済み] [解答】ある数字が与えられたとき、元の数字と全く同じ桁数の次の数字を求めよ。