[解決済み] Breadth First Searchの時間複雑性解析
2022-03-06 23:21:27
質問
ある頂点の隣接する各辺を巡回する際の時間計算量は、例えば、以下のようになる。
O(N)
ここで
N
は隣接するエッジの数である。そのため
V
の頂点の数は、時間の複雑さは次のようになります。
O(V*N)
=
O(E)
ここで
E
はグラフ内のエッジの総数である。キューから頂点を削除したり、キューに追加したりするのは
O(1)
としてBFSの全体的な時間計算量に加算されるのはなぜか?
O(V+E)
?
解決方法は?
Breadth First Search (BFS)の計算時間について理解するのに苦労している人の助けになれば幸いです。
Queue graphTraversal.add(firstVertex);
// This while loop will run V times, where V is total number of vertices in graph.
while(graphTraversal.isEmpty == false)
currentVertex = graphTraversal.getVertex();
// This while loop will run Eaj times, where Eaj is number of adjacent edges to current vertex.
while(currentVertex.hasAdjacentVertices)
graphTraversal.add(adjacentVertex);
graphTraversal.remove(currentVertex);
時間的な複雑さは以下の通りです。
V * (O(1) + O(Eaj) + O(1))
V + V * Eaj + V
2V + E(total number of edges in graph)
V + E
私はコードと複雑な計算を簡素化しようとしましたが、それでも何か質問があれば私に知らせてください。
関連
-
[解決済み] DFSとBFSの時間計算量がともにO( V + E )であるのはなぜか?
-
[解決済み] n個のユニオンのfind(サイズによるユニオン)演算を実行する際の時間計算量がO(n log n)であるのはなぜか?
-
[解決済み] ヒープ化 VS ビルドヒープ
-
[解決済み] 簡単な面接問題が難しくなった:1~100の数字が与えられたとき、ちょうどk個の数字が欠けていることを見つけなさい。
-
[解決済み】画像処理。コカ・コーラ缶」認識のためのアルゴリズム改良
-
[解決済み】アルゴリズムの時間複雑性を求めるには?
-
[解決済み】美観を損なわないカラーパレットをランダムに生成するアルゴリズム【終了しました
-
[解決済み】10億個の数字の配列から最大100個の数字を求めるプログラムを作成せよ
-
[解決済み】ポリゴンの膨張・収縮(オフセット、バッファリング)のためのアルゴリズム
-
[解決済み] [解答】ある数字が与えられたとき、元の数字と全く同じ桁数の次の数字を求めよ。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ソートされていない配列でバイナリサーチは使えるか?重複
-
[解決済み] ビッグ・オー vs ビッグ・シータ【重複あり
-
[解決済み] NP - 非決定性多項式時間
-
[解決済み】有向グラフのサイクルを検出する最適なアルゴリズム【クローズド
-
[解決済み】美観を損なわないカラーパレットをランダムに生成するアルゴリズム【終了しました
-
[解決済み】円の円周上にある点を計算するには?
-
[解決済み】動的計画法を用いて,最も長く増加する部分列を決定する方法とは?
-
[解決済み】純粋な関数型プログラミングの効率性
-
[解決済み】異なるサイズの長方形を、かなり最適な方法で可能な限り小さな長方形に詰め込むには、どのようなアルゴリズムが使用できるだろうか?
-
[解決済み】セグメントツリー、インターバルツリー、バイナリーインデックスツリー、レンジツリーの違いは何ですか?