欧式距离计算公式c++代码
时间: 2024-05-03 08:15:17 浏览: 298
欧式距离是一种常用的距离度量方法,用于计算两个向量之间的距离。在C++中,可以使用以下代码来计算欧式距离:
```cpp
#include <iostream>
#include <vector>
#include <cmath>
// 计算欧式距离的函数
double euclideanDistance(const std::vector<double>& vec1, const std::vector<double>& vec2) {
if (vec1.size() != vec2.size()) {
throw std::invalid_argument("向量维度不一致");
}
double distance = 0.0;
for (size_t i = 0; i < vec1.size(); ++i) {
distance += pow(vec1[i] - vec2[i], 2);
}
return sqrt(distance);
}
int main() {
// 示例向量
std::vector<double> vec1 = {1.0, 2.0, 3.0};
std::vector<double> vec2 = {4.0, 5.0, 6.0};
// 计算欧式距离
double distance = euclideanDistance(vec1, vec2);
// 输出结果
std::cout << "欧式距离: " << distance << std::endl;
return 0;
}
```
这段代码定义了一个名为`euclideanDistance`的函数,接受两个`std::vector<double>`类型的向量作为参数,并返回它们之间的欧式距离。在`main`函数中,我们定义了两个示例向量`vec1`和`vec2`,然后调用`euclideanDistance`函数计算它们之间的距离,并将结果输出到控制台。
阅读全文