LeetCode OJ刷题历程——Two Sum

Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].
You may assume that each input would have exactly one solution.
以上是题目要求。

这是LeetCode的第一题,没什么难度,我选择的是C++语言,第一次写,效率并不高,运行时间为372ms,比较低。下面贴出首次AC代码:

class Solution {
public:
    vector twoSum(vector& nums, int target) {
        int size = nums.size();
		int i,j;
		vector result;
		for(i = 0;i

这个题目让我复习了一下关于vector的操作,这里重新罗列一下:

(1)初始化

vector v1

vector v2(v1) v2中包含v1所有元素的副本

vector v2 = v1 等价于v2(v1)

vector v3(n,val) v3包含n个重复元素,值为val

vector v4(n) v4包含了n个重复地执行了值初始化的对象

vector v5{a,b,c....} v5包含了初始个数的元素,即和数组的初始化一样

vector v5 = {a,b,c....} 等价于v5{a,b,c.....}

比如vector v1(10) 则是v1有十个元素,每个值都为0,vector v1(10,1),则每个值都为1,注意圆括号和花括号的区别。

(2)vector的一些操作

v.push_back(t) 向v的尾端添加一个值为t的元素

<,<=,>,>= 以字典顺序进行

需要注意的是不能以下标形式对添加元素

(3)vector的遍历

你可能感兴趣的:(OJ,C++,leetcode)