打卡第一天,主要学习了数组相关内容
1.理论部分一维 a[i]=a[0]+i*c;
二维 a[i][j]=a[0][0]+i*n*c+j*c;
三维 a[i][j][k]=a[0][0][0]+i*n*l*c+j*l*c+k*c;
(理由:以行优先存储)
2.例题A.两数之和:两数之和题目
代码解答
class Solution {
public:
vector twoSum(vector& nums, int target) {
int i,j;
for(i=0;i
思路: 双重for循环,如果碰到值相等就返回下标
需要注意的地方:1)返回的是vector向量,所以要先声明i,j;然后返回{i,j}
2)for循环时,i从0开始,因为i后面还有一个j,所以如果i到n-1,则j没有位置,所以i只能到n-2,也就是小于n-1,为了防止重复,j必须从i之后取,然后到n-1
3)nums也是个vector,取大小时用函数nums.size()
B. 最接近的三数之和 题目
代码
class Solution {
public:
int threeSumClosest(vector& nums, int target) {
sort(nums.begin(),nums.end());//先对vector排序,默认从小到大
int result=nums[0]+nums[1]+nums[2];//设置result初始值
for(int i=0;i
截图:



