code: protected static List<DistanceResult> calculateDistances(LofPoint targetPoint,
              LofDataSet dataSet)
      {
          List<DistanceResult> distances = new ArrayList<>();
          for (Map.Entry<String, LofPoint> targetEntry : dataSet.getDataMap().entrySet())
          {
              // 同一データの場合除外する
              if (StringUtils.equals(targetEntry.getKey(), targetPoint.getDataId()) == true)
              {
                  continue;
              }
  
              double distance = MathUtils.distance(targetEntry.getValue().getDataPoint(),
                      targetPoint.getDataPoint());
  
              DistanceResult result = new DistanceResult(targetEntry.getKey(), distance);
  
              // リストに保持し、算出後ソート
              distances.add(result);
          }
  
          Collections.sort(distances, new DistanceResultComparator());
          return distances;
      }
docs: 指定した対象点、データセットを基に対象点とデータセット中の各点間の距離を算出し、距離の昇順のリストを生成して返す。
  
  @param targetPoint 判定対象点
  @param dataSet 全体データ
  @return 距離算出結果リスト。距離＞データIDの優先度でソートした状態で返す。