내가 자바에서 다음과 같은 문제가 (이 꽤 많이에서 다른 언어를 할 수 있지만) 해결하려고 노력하고 있어요 :자바 : 거리 측정 알고리즘 설계
I는 정수 값의 두 배열, xs
및 ys
을 부여하고를 x 축의 dataPoints를 나타냅니다. 둘 다 0보다 크지 만 길이가 동일하지 않을 수 있으며, 정렬 할 필요가 없습니다. 제가 계산하고자하는 것은 두 개의 데이터 세트 사이의 최소 거리를 측정하는 것입니다. 제가 의미하는 바는 각각에 대해 x
ys
집합에서 가장 가까운 y
을 찾고 거리를 계산합니다 (예 : (x-y)^2
). 예를 들어 :
xs = [1,5]
ys = [10,4,2]
가 반환해야합니다 (1-2)^2 + (5-4)^2 + (5-10)^2
거리 측정, 그것은 내가 알고리즘 중요하지 않습니다 관심이. 둘 다 정렬 배열에 대해 어떻게 든 더 나은 무언가를 달성하기 위해 두 배열의 사전 인덱스를 생각했다 (각 elem에 대한 x, 스캔 ys 모든 elems 스캔) O(len1 * len2)
입니다.
이것은 숙제 문제가 아닌 내 자신의 문제입니다. 귀하의 모든 힌트는 크게 감사하겠습니다.
예를 들어 실제로 각 y가 가장 가까운 x를 찾은 것처럼 보입니다. 더 큰 세트의 각 요소에 대해 더 작은 세트의 가장 가까운 요소를 찾는다는 것을 의미합니다. 더 큰 집합에 요소가 있기 때문에 거리 계산에 많은 용어가 존재할 것으로 기대합니다. –
예, 더 큰 세트입니다. 더 작은 세트와 비교합니다. O (len1 * len2)보다 더 좋게 만드는 방법은? – Bober02