Leetcode刷题笔记–两数之和
1.题目描述
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。
2.解答方法
2.1.暴力法
class Solution {
public:
vector
<int> twoSum(vector
<int>& nums
, int target
) {
int len
=nums
.size();
vector
<int> result
;
for(int i
=0;i
<len
;i
++)
{
for(int j
=i
+1;j
<len
;j
++)
{
if(nums
[i
]+nums
[j
]==target
)
{
result
.push_back(i
);
result
.push_back(j
);
}
}
}
return result
;
}
};
2.1.哈希表法
//以后再补充
3.知识点整理
3.1vector<vector>的使用
3.1.1 定义
vector
<vector
<int> > A
;
3.1.2 插入元素
vector
<vector
<int> > A
;
vector
<int> B
;
B
.push_back(0);
B
.push_back(1);
B
.push_back(2);
A
.push_back(B
);
B
.clear();
B
.push_back(3);
B
.push_back(4);
A
.push_back(B
);
vector
<vector
<int> > A
;
for(int i
= 0; i
< 2; ++i
) A
.push_back(vector
<int>());
A
[0].push_back(0);
A
[0].push_back(1);
A
[0].push_back(2);
A
[1].push_back(3);
A
[1].push_back(4);
3.1.3 长度
len
= A
.size();
len
= A
[i
].size();
3.1.4 访问某元素
printf("%d\n", A
[0][1]);
参考链接:https://www.cnblogs.com/tyty-Somnuspoppy/p/9361821.html