TwoSum(算法分析课week1)
来源:互联网 发布:蓝雨伞之恋 知乎 编辑:程序博客网 时间:2024/06/07 05:29
TwoSum
题目来源:https://leetcode.com/problemset/algorithms/
- 问题描述
- 解题思路
- 代码实现
问题描述
Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
Example:
Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].
解题思路
这个问题的实现很简单,利用两层循环就可以实现,但是要注意一个数字不可以使用两次,这就要求第二层循环变量不能等于第一层循环变量。而且每个输入只有一个解,所以得到一个解就可以跳出循环。所以我所使用的算法的时间复杂度为O(n^2).
代码实现
class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> twoSum; vector<int>::iterator it; int i = 0; int flag = 0; for (it=nums.begin();it!=nums.end();it++, i++) { vector<int>::iterator it1; it1 = it; it1++; int j = i; j++; for (it1; it1 != nums.end(); it1++, j++) { if (*it + *it1 == target) { twoSum.push_back(i); twoSum.push_back(j); flag = 1; break; } } if (flag == 1) break; } return twoSum; }};
阅读全文
0 0
- TwoSum(算法分析课week1)
- week1——算法分析
- (算法分析Week1)Maximum Subarray[Easy]
- (算法分析Week1)Majority Element[Easy]
- Add Two Numbers(算法分析week1)
- TwoSum算法
- (算法分析Week1)Different Ways to Add Parentheses[Medium]
- leetcode算法之TwoSum
- LeetCode 算法实现:TwoSum
- 回归分析week1
- 【算法设计作业】Week1
- 算法分析与设计——LeetCode刷题之TwoSum(easy)
- 刷LeetCode算法之TwoSum
- twoSum
- TwoSum
- TwoSum
- TwoSum
- twoSum
- 数论知识
- Nagle算法
- 【BZOJ3192】【JLOI2013】删除物品
- hdoj 6058(2017 Multi-University Training Contest
- 找规律-POJ3372
- TwoSum(算法分析课week1)
- 大数据Hive的案例、参数、动态分区、分桶、视图、索引、运行方式、权限管理、Hive的优化_03_03
- buildroot
- Python切片赋值操作
- 指向函数的指针
- MFC一一框架类当中的一些操作(改变标题,设置菜单栏,工具栏)
- linux+apache+mysql+php环境搭建配置多个网站(全程实操)
- HDOJ 1394 Minimum Inversion Number(线段树+逆序数)
- Java的21个核心技术点,你知道吗?