BFSの実行時間はO(b ^ d)です。
bは分岐係数、dは開始ノードからのグラフの深さ(レベルの数)です。
私はしばらくグーグルで検索しましたが、この「b」をどのように理解するかについて誰も言及していません。
つまり、分岐係数は「各ノードが持つ子の数」を意味することを私は知っています
たとえば、二分木の分岐係数は2です。
したがって、BFSグラフの場合、b=グラフ内の各ノードのすべての分岐係数を平均します。
またはb=MAX(各ノードのすべての分岐因子の中で)?
また、どちらの方法でbを選択しても、実行時間に近づくにはあいまいに見えます。たとえば、グラフに30000ノードがある場合、5ノードのみに10000分岐があり、残りのすべての29955ノードには10分岐しかありません。深度は100に設定されています。
この場合、O(b ^ d)は意味をなさないようです。
誰かが少し説明できますか?ありがとうございました!