Итак, у меня есть необработанный файл размером 250x200 пикселей, который я прочитал в 2D-массив, например rawFile[250][200]
, где каждый пиксель (каждый индекс массива) действует как узел, а каждое значение пикселя представляет высоту (например, топографическую карту). Я хочу найти кратчайший путь, используя алгоритм Дейкстры от rawFile[0][0]
до rawFile[250][200]
, при этом стоимость расстояния представляет собой абсолютное значение разницы перехода от node1
до node2
плюс расстояние кратчайшего пути до текущего посещаемого узла. Каждый узел может двигаться в четырех основных направлениях (N, E, S, W), при условии, что в соответствующем направлении есть соседний узел. Я читал псевдокод и различные реализации, для которых требуется матрица смежности или список смежности, который в данном случае будет adjMatrix[50000][50000]
. Однако я изо всех сил пытаюсь понять, как я могу заполнить матрицу смежности только из необработанного файла.
Есть ли у кого-нибудь из вас предложения по решению этой проблемы? Спасибо!