leetcode 1:Two Sum
来源:互联网 发布:ba无标度网络模型 编辑:程序博客网 时间:2024/06/05 21:13
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.
Example:
Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
解法1:(时间复杂度为O(N^2))
(强搜法)直接以第i个数(i从0到nums.size()-1)作为构成和为target的第一个数,然后在剩余的数组中找target-nums[i]。若为真,则将找到的两个数存入rlt数组,并且输出;否则继续找。最后若没有找到,输出0。
结果:AC,but时间579ms,哭死。于是寻求改进的方法。
听说用数组实现比较快,试下:
代码2:
class Solution {
public:
vector<int> twoSum(vector<int>& nums, int target) {
vector<int> rlt;
int i = 0, j = 0,n = nums.size();
for (i = 0;i < n;i++){
for(j = i+1;j<n;j++)
if (nums[j]== target-nums[i]){
rlt.push_back(i);
rlt.push_back(j);
return rlt;
}
}
return rlt;
}
};
结果:AC,but时间依然516ms居高不下,嗯,过一段时间再来优化
- LeetCode 1 - Two Sum
- leetcode 1 Two Sum
- Leetcode【1】:Two Sum
- [leetcode 1] Two Sum
- 【leetcode-1】Two Sum
- [leetcode 1] Two Sum
- [Leetcode] 1 - Two Sum
- LeetCode (1) Two Sum
- LeetCode 1:《Two Sum》
- LeetCode | #1 Two Sum
- leetcode-1 Two Sum
- Two Sum | LeetCode(1)
- [Leetcode]1Two Sum
- leetcode 1 Two Sum
- leetcode #1 Two Sum
- leetcode 1:Two Sum
- LeetCode 1 Two Sum
- leetcode #1 two sum
- opwenwrt交叉编译(二)——交叉编译环境的搭建(Ubuntu)
- python网页爬虫代理
- C++多文件结构和编译预处理命令
- WebView注入Java对象注意事项
- 161019
- leetcode 1:Two Sum
- Java final 关键字到底修饰了什么?
- 《Java 源码分析》:Java NIO 之 ServerSocketChannel
- <机器学习实战>——k近邻算法
- Flume1.7.0+Elasticsearch1.7.5+Kibana4.11日志收集分析系统环境搭建
- 算法题型的个人练习_01
- 源码-Oracle数据库管理-第十章-数据表操作-Part 4(删除数据)
- 欧拉工程第21题 计算10000以下所有相亲数之和
- Java中抛出的内存异常总结