[Algorithm] Eucludean, Manhattan

Euclidean distance , Manhattan distance

유클리드 거리는 유클리드 공간에서 두 점 사이의 거리를 계산할때 사용된다.

2차원 평면에서 흔히 피타고라스의 정리라고 부르는것과 같다.

n차원 직교 좌표계에서 벡터 p,q 가 존재할때 이 두점 p,q의 거리를 구하는 공식은 아래와 같다.

보통은 2차원 평면에서 사용하는데, C언어에서는 2차원에서의 유클리드 거리(피타고라스 거리)를 계산하는 함수가 있다.

float hypotf(float x,float y);  
double hypot(double x,double y);  
long double hypotl(long double x,long double y);  

위 세 함수는 모두 아래의 수식을 계산한다.

hypotenuse 의 약어이며, 기하학에서 직각 삼각형의 빗변을 뜻한다.


맨하탄 거리는 직교 좌표계에서 벡터 p,q 사이의 거리를 일정한 좌표축의 점들 사이의 선분 길이의 합이다.

택시 거리라고도 한다.

C언어에서 따로 맨하탄 거리를 구해주는 함수는 없다.

간단한 절대값 함수abs, fabs를 사용해 구할수 있기 때문이다.