2012-11-11 7 views
0

나는 한 묶음의 값을 가지고있다. 예를 들면 : [1,2,14,51,1001031071103005051034]. 그리고 저는 패턴 값을 가지고 있습니다, 예를 들면 [1,10201005001000]입니다. 필자는 FROM 패턴 중에서 가장 적합한 값을 얻을 필요가있다. 내 예에서는 100입니다.이 값을 어떻게 찾을 수 있습니까?적절한 값을 찾기위한 알고리즘/방법 제안 제안

생활에서의 예. 응용 프로그램은 사용자 위치와 일부 개체 사이에 거리의 무리가 있습니다. 이 앱에는 거리 별 사전 설정 필터가 있습니다. [1 미터, 10 미터, 20 미터, 100 미터]. 첫 번째 값 (예제에서는 1 미터)이 아닌 기본적으로 필터를 설정하는 것이 좋지만 거리에 가장 적합한 값 (내 예제에서는 100 미터)과 일치하는 값으로 설정합니다. 나는 하나의 가치를 발견 할 필요가있다.

도움을 주셔서 감사합니다.

+0

각각의 값을 가장 가까운 패턴 값에 할당 한 다음 가장 많은 값이 할당 된 패턴 값을 반환하는 방법은 어떻습니까? –

답변

0
I (이 실제 코드가 아닙니다)이 같은 함수를 만들 말할 것

:

  var ratio1 = 0.66 
      var ratio2 = 1.5 
      function Score(currentPatternValue, arrayOfValues) 
      { 
      count = 0 
      for each value in arrayOfValues <br> 
       if value > ratio1 * currentPatternValue AND value < ratio2 * currentPatternValue<br> 
       count++<br> 

      return count 
      } 

다음 해당 함수에서 반환하여 패턴 값의 각 값에 대해이 작업을 실행하고 가장 높은 점수와 함께 하나를 선택