2 つの位置オブジェクト間の距離を把握するために Geokit を使用しています。http://geokit.rubyforge.org/
私の質問は、場所の配列がある場合、それらを調べて総移動距離を計算するのに最適なアルゴリズムは何ですか? 最初は Enumerable#inject で N-1 の位置オブジェクト間の移動距離のメモを渡す方法だと思っていましたが、実際の配列で既にチェックした位置オブジェクトの状態を保存する方法はありません.
これには、配列のサイズ、現在のインデックス、および注入の動作が必要です。理想的には、次のようなことができます:
locations = [Geokit::LatLng, Geokit::LatLng, ...]
locations.inject(0) do |memo, location|
memo += location.distance_from(previous_location)
end
ただし、この場合、previous_location は未定義です。
考え?