Công thức khoảng cách Euclide tìm khoảng cách giữa hai điểm bất kỳ trong không gian Euclide.
Một điểm trong không gian Euclide còn được gọi là véc tơ Euclide.
Bạn có thể sử dụng công thức khoảng cách Euclide để tính khoảng cách giữa các vectơ có hai độ dài khác nhau.
Đối với các vectơ có kích thước khác nhau, nguyên tắc tương tự cũng được áp dụng.
Giả sử một vectơ có kích thước thấp hơn cũng tồn tại trong không gian chiều cao hơn. Sau đó, bạn có thể đặt tất cả các thành phần bị thiếu trong vector chiều thấp xuống 0 sao cho cả hai vectơ có cùng kích thước. Sau đó, bạn sẽ sử dụng bất kỳ công thức khoảng cách đã đề cập nào để tính toán khoảng cách.
Ví dụ, hãy xem xét một vector 2 chiều A
trong R²
với các thành phần (a1,a2)
, và một vector 3 chiều B
trong R³
với các thành phần (b1,b2,b3)
.
Để thể hiện A
trong R³
, bạn sẽ đặt thành phần của nó thành (a1,a2,0)
. Sau đó, Euclide khoảng cách d
giữa A
và B
thể được tìm thấy bằng cách sử dụng công thức:
d² = (b1 - a1)² + (b2 - a2)² + (b3 - 0)²
d = sqrt((b1 - a1)² + (b2 - a2)² + b3²)
Đối với trường hợp cụ thể của bạn, các thành phần sẽ là một trong hai 0
hoặc 1
, vì vậy tất cả những khác biệt sẽ -1
, 0
, hoặc 1
. Sau đó, các khác biệt bình phương sẽ chỉ là 0
hoặc 1
.
Nếu bạn đang sử dụng số nguyên hoặc bit cá nhân để đại diện cho các thành phần, bạn có thể sử dụng các hoạt động Bitwise đơn giản thay vì một số số học (^
nghĩa XOR
hoặc exclusive or
):
d = sqrt(b1^a1 + b2^a2 + ... + b(n-1)^a(n-1) + b(n)^a(n))
Và chúng ta đang giả định dấu thành phần của A
là 0
, vì vậy công thức cuối cùng sẽ là:
d = sqrt(b1^a1 + b2^a2 + ... + b(n-1) + b(n))
Vectơ của bạn chứa gì? (Bits, nổi, ...)? Bạn không thể điền chúng với 0 và áp dụng một trong những khoảng cách cùng chiều dài vectơ? – Scharron
@Scharron, tôi nghĩ rằng bạn đang bối rối kích thước của một vector với chiều dài (chuẩn) của một vectơ. OP đã không đề cập đến bất cứ nơi nào mà số lượng các thành phần trong một vector khác với số lượng các thành phần trong một vector khác. – ardnew
@ardnew Bạn đúng trong toán học thuần túy. Nhưng cách câu hỏi được thể hiện, tôi cho rằng ông đã nói về chiều dài "khoa học máy tính", có nghĩa là số lượng các phần tử trong một vectơ. Khác, ông sẽ không có vấn đề tính toán khoảng cách của các vectơ có độ dài khác nhau. – Scharron