Поиск кратчайшего пути - PullRequest
0 голосов
/ 04 июля 2018

Разве не всегда лучше при поиске кратчайшего пути использовать списки подключенных узлов вместо сетки?

При использовании сетки вы должны каждый раз перебирать сетку, тогда как использование списков экономит много времени.

1 Ответ

0 голосов
/ 09 июля 2018

С матрицей смежности обычно каждая проверка стоит O (n) времени. Это может быть немного медленнее, чем список подключенных узлов. Тем не менее, вы можете сделать некоторые интересные вещи с ним. Например, если вы хотите удалить много ребер, вы можете сделать это в O (1), используя матрицу смежности (это может занять гораздо больше времени, если использовать список узлов в зависимости от того, какую структуру данных вы для него используете). Матрица смежности также является матрицей. Что я имею в виду под этим? Если вы хотите проверить, сколько способов вы можете получить от узла A до узла B за k шагов, вы можете поднять эту матрицу до степени k, что невозможно сделать со списком.

...