二つの数と
問題の説明
整数配列NUMSと目標値の目標を考えると、配列内の2つの整数の目標値を特定し、その配列の添字に戻るにお願いします。
你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。
例:
所与
nums = [2, 7, 11, 15], target = 9
ので、
nums[0] + nums[1] = 2 + 7 = 9
そのリターン[0, 1]
分析
番号を取得し、その後、番号を聞かせて、試合を行う、とした
target
インデックスに戻るには、
コードの実装
暴力法
public:
vector<int> twoSum(vector<int>& nums, int target) {
vector<int> v(2);
for(int i = 0; i < nums.size(); ++i)
{
for(int j = i + 1; j < nums.size(); ++j)
{
if(nums.at(i) + nums.at(j) == target)
{
v.at(0) = i;
v.at(1) = j;
return v;
}
}
}
return v;
}
};
業績
输入
[2,7,11,15]
9
输出
[0,1]
概要
各テイク前ブルートフォース問題の使用、2つのサイクルの使用、もちろん、方法は、ハッシュテーブルで使用することができる、それに対応する各テーブルのインデックス番号が格納され、数、存在かどうかを確認するために、ハッシュ・テーブルに一致コンプライアンスそれは、とすることができます
target
番号があり、そのインデックスがあれば、ハッシュテーブルに追加し、次を探し始め、返されます。