蛮力法(brute force)是一种基本的问题求解策略,也被称为穷举法。它的基本思想是通过穷举所有可能的解来寻找问题的解决方案。
在C++中,可以使用循环和条件判断语句来实现蛮力法。下面是一个示例,假设要解决的问题是找到数组中两个数的和等于给定目标值的情况:
#include <iostream>
#include <vector>
std::vector<int> bruteForceTwoSum(std::vector<int>& nums, int target) {
std::vector<int> result;
int size = nums.size();
for (int i = 0; i < size - 1; i++) {
for (int j = i + 1; j < size; j++) {
if (nums[i] + nums[j] == target) {
result.push_back(i);
result.push_back(j);
return result;
}
}
}
return result;
}
int main() {
std::vector<int> nums = {2, 7, 11, 15};
int target = 9;
std::vector<int> indices = bruteForceTwoSum(nums, target);
if (indices.empty()) {
std::cout << "No solution found." << std::endl;
} else {
std::cout << "Indices: " << indices[0] << ", " << indices[1] << std::endl;
}
return 0;
}
在上面的代码中,bruteForceTwoSum
函数使用了两层循环嵌套来遍历数组中的所有可能的数字组合。如果找到了两个数的和等于目标值,则将它们的索引添加到结果向量中并返回。在main
函数中,将示例数组和目标值传递给bruteForceTwoSum
函数,并打印出结果。
需要注意的是,蛮力法通常是一种简单但不高效的求解方法。对于较大规模的问题,蛮力法可能需要很长时间才能找到解决方案,因此在实际应用中通常会使用更高效的算法。
标签:std,解释,vector,nums,int,c++,蛮力,result From: https://blog.csdn.net/m0_74811974/article/details/137283889