2016-01-20 6 views
1

РасстояниеЖадный алгоритм, NumPy, матрица, эксплантация

от 0 до 1, составляет 1,0

от 1 до 2 составляет 3,0

от 0 до 2 составляет 2,0

D = [ 

    [ 0, 1.0, 2.0], 
    [ 1.0, 0, 3.0], 
    [ 2.0, 3.0, 0] 
] 

Так У меня есть матрица, которая выглядит как одна выше.

Но я не могу понять, почему эти меры похожи на те, что указаны в верхней части моего сообщения?

Как расстояние от 0 до 1 составляет 1,0?

+1

Возможно, вы читаете нотацию индекса неправильно? 'D [0] [1] = 1.0' и т. Д. - глядя на местоположение значения в массиве, а не на расстояние между значениями? –

+0

Не мой код. Расстояния указаны в документах. Я не придумал это самостоятельно – sebb

ответ

1

А ... это предварительно загруженный массив расстояний.

Скажем, например, что точка 0 равна (5,0), точка 1 равна (4,0), а точка 2 равна (7,0). Затем D предварительно загружается межточечными расстояниями, то есть D[from_point][to_point] = distance(from_point, to_point).

Затем вы можете ссылаться на матрицу, а не на пересчет расстояний.

+0

Хорошо, но какие индексы из матрицы соответствуют, скажем, идентификатору точки? Или это точки? Потому что диагональ заполнена нулями, и это путает меня – sebb

+0

О, я вижу сейчас. Thats, потому что от 0 до 0 равно 0 ... И от 2 до 2 равно 0. Хорошо спасибо mate. Я думаю, что я получаю это сейчас – sebb

+0

Итак, если вы хотите иметь больший набор данных, вам нужно создать массив NxN? Где N - число наших элементов? – sebb

Смежные вопросы