E - это множество всех ребер графа, как G = {V, E}.Итак, | E |это количество всех ребер в графе.
Одного этого должно быть достаточно, чтобы убедить вас, что общая сложность не может быть | V |раз | E |, поскольку мы не выполняем итерацию по всем ребрам графа для каждой вершины.
В представлении списка смежности для каждой вершины v мы проходим только те узлы, которые прилегают к ней.
| V |фактор | V | + | E |Похоже, что из-за количества выполненных операций с очередями.
Обратите внимание, что сложность алгоритма зависит от используемой структуры данных.фактически мы обращаемся к каждой части информации, представленной в представлении графа, поэтому для матричного представления графа сложность становится квадратом V.
Цитирование из Кормена,
"Операциина постановку в очередь и снятие очереди занимает O (1) времени, поэтому общее время, отведенное для операций с очередями, составляет O (V). Поскольку список смежности каждой вершины сканируется только тогда, когда вершина снята, каждый список смежности сканируется не более одного раза.Поскольку сумма длин всех списков смежности равна Θ (E), общее время, затрачиваемое на сканирование списков смежности, составляет O (E). Затраты на инициализацию составляют O (V), и, таким образом, общее время работы BFS составляетO (V + E). "