【LeetCode】1.Two Sum

一.知识点

1.vector<int>
是c++中的一种数据结构(向量)。也即动态数据,可节省空间。

声明:vector<int> a;
用法:

(1) push_back   在数组的最后添加一个数据
(2)pop_back    去掉数组的最后一个数据 
(3)at                得到编号位置的数据
(4)begin           得到数组头的指针
(5) end             得到数组的最后一个单元+1的指针
(6)front        得到数组头的引用
(7)back            得到数组的最后一个单元的引用
(8)max_size     得到vector最大可以是多大
(9)capacity       当前vector分配的大小
(10)size           当前使用数据的大小
(11)resize         改变当前使用数据的大小,如果它比当前使用的大,者填充默认值
(12)reserve      改变当前vecotr所分配空间的大小
(13)erase         删除指针指向的数据项
(14)clear          清空当前的vector
(15)rbegin        将vector反转后的开始指针返回(其实就是原来的end-1)
(16)rend          将vector反转构的结束指针返回(其实就是原来的begin-1)
(17)empty        判断vector是否为空
(18)swap         与另一个vector交换数据

Note:size与capacity的区别
之前这个问题没理解清楚,导致了数组越界。

二.Two Sum代码

class Solution {
public:
	vector<int> twoSum(vector<int>& nums, int target) {
		vector <int> p;

		for (int i = 0; i<nums.size()-1; i++) {//nums.size 和nums.capacity区别是什么??
			for (int j = i + 1; j<nums.size(); j++) {
				if (nums[i] + nums[j] == target) {
					p.push_back(i);
					p.push_back(j);
					return p;
				}

			}
		}

	}
};


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值