LeetCode OJ刷题历程——Two Sum
来源:互联网 发布:墓畔回忆录 知乎 编辑:程序博客网 时间:2024/05/19 15:24
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<int> twoSum(vector<int>& nums, int target) { int size = nums.size();int i,j;vector<int> result;for(i = 0;i<size;i++){int temp = nums[i];for(j = i+1;j<size;j++)if((target-temp) == nums[j])break;if(j < size)break;}result.push_back(i);result.push_back(j);return result; }};
这个题目让我复习了一下关于vector的操作,这里重新罗列一下:
(1)初始化
vector<T> v1
vector<T> v2(v1)v2中包含v1所有元素的副本
vector<T> v2 = v1等价于v2(v1)
vector<T> v3(n,val)v3包含n个重复元素,值为val
vector<T> v4(n)v4包含了n个重复地执行了值初始化的对象
vector<T> v5{a,b,c....}v5包含了初始个数的元素,即和数组的初始化一样
vector<T> v5 = {a,b,c....}等价于v5{a,b,c.....}
比如vector<int> v1(10) 则是v1有十个元素,每个值都为0,vector<int> v1(10,1),则每个值都为1,注意圆括号和花括号的区别。
(2)vector的一些操作
v.push_back(t)向v的尾端添加一个值为t的元素
<,<=,>,>= 以字典顺序进行
需要注意的是不能以下标形式对添加元素
(3)vector的遍历
1 0
- LeetCode OJ刷题历程——Two Sum
- LeetCode OJ刷题历程——Add Two Numbers
- 1. Two Sum——LeetCode OJ
- LeetCode OJ:Two Sum
- LeetCode OJ : two sum
- LeetCode OJ -Two Sum
- LeetCode OJ Two Sum
- [LeetCode OJ] Two Sum
- Two Sum LeetCode OJ
- LeetCode OJ - Two Sum
- LeetCode OJ ----Two Sum
- LeetCode OJ--Two Sum
- Two Sum (LeetCode OJ)
- LeetCode OJ:Two sum
- LeetCode — Two Sum
- LeetCode—Two Sum
- LeetCode—Two Sum
- leetcode—Two Sum
- Touch 事件的分发与消费
- GIS导论(1)
- 翻翻git之---实用的欢迎页开源库 AppIntro
- Repaint/Reflow 的基本认识和优化
- 作为OPC服务器的紫金桥软件与PHD的通讯
- LeetCode OJ刷题历程——Two Sum
- filter过滤器
- Debian/Ubutun 之 桌面自定义
- 飞机大战
- python学习常用网站
- LeetCode:181. Employees Earning More Than Their Managers
- VMware-workstation中文版修改成英文版简单方法
- Android应用启动优化:一种DelayLoad的实现和原理
- linux的帮助命令