我是小张同学,立志用最简洁的代码做最高效的表达


以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言!

传送门——>Leecode大厂热题100道系列题解


给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案。

示例 1:
输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。

示例 2:
输入:nums = [3,2,4], target = 6
输出:[1,2]

示例 3:
输入:nums = [3,3], target = 6
输出:[0,1]

提示:
2 <= nums.length <= 104
-109 <= nums[i] <= 109
-109 <= target <= 109

只会存在一个有效答案
进阶:你可以想出一个时间复杂度小于 O(n2) 的算法吗?


解法1:暴力

时间复杂度O(n²), 空间复杂度O(1)

class Solution {public:vector<int> twoSum(vector<int>& nums, int target) {vector<int> res;for(int i = 0; i < nums.size(); i++) {for(int j = i + 1; j < nums.size(); j++) {if(nums[i] + nums[j] == target) {res.push_back(i);res.push_back(j);goto loop;}}}loop:;return res;}
};

解法2:hash表

时间复杂度O(n), 空间复杂度O(n)

class Solution {public:vector<int> twoSum(vector<int>& nums, int target) {unordered_map<int, int>um;for(int i = 0; i < nums.size(); i++) {auto it = um.find(target - nums[i]);if(it != um.end()) {return {it->second, i};}um[nums[i]] = i;}return {};}
};

Leecode01. 两数之和——Leecode大厂热题100道系列相关推荐

  1. Leecode15. 三数之和——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 问题描 ...

  2. Leecode 21. 合并两个有序链表——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 题目描 ...

  3. Leecode11. 盛最多水的容器——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 问题描 ...

  4. Leecode06. Z 字形变换——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 问题描 ...

  5. Leecode31. 下一个排列——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 问题描 ...

  6. Leecode22. 括号生成——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 问题描 ...

  7. Leecode20. 有效的括号——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 问题描 ...

  8. Leecode19. 删除链表的倒数第 N 个结点——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 题目描 ...

  9. Leecode17. 电话号码的字母组合——Leecode大厂热题100道系列

    我是小张同学,立志用最简洁的代码做最高效的表达 以下是我个人做的题解,每个题都尽量囊括了所有解法,并做到了最优解,欢迎大家收藏!留言! 传送门-->Leecode大厂热题100道系列题解 问题描 ...

最新文章

  1. petaPar培训文档
  2. [python] shell模式下面写for循环
  3. 关于“如何破坏单例“我说了好几种方式,面试官却说:我其实随便问问,没想到你真会
  4. DotNet4应用程序打包工具(把DotNet4安装程序打包进你的应用程序;WINAPI开发,无dotNet环境也可顺利执行)【一】整体思路...
  5. mysql逗号分隔函数_mysql split 函数(用逗号分隔)的实现
  6. Android深度探索(卷1)HAL与驱动开发第六章总结
  7. UVa 988 - Many Paths, One Destination
  8. php里建立数据库和表,PHP 创建数据库和表 | w3cschool菜鸟教程
  9. 手机/邮箱等帐号判断
  10. grpc java 泛型_关于使用GRPC遇到的BUG-Go语言中文社区
  11. sqlserver垮库查询_sql跨库查询(sqlserver跨库查询)
  12. java在线生成uuid_Java生成uuid
  13. 熟练掌握CAD制图,能做哪些工作?
  14. 《软件系统架构:使用观点和观点与利益相关者合作》阅读小结——一
  15. python 小说cms系统_零基础小白十分钟用Python搭建小说网站!Python真的强!
  16. 【数学建模】DIY人脸识别(原创)
  17. linux shutdown关不了机
  18. Android源码目录结构分析
  19. 【ccf2021训练赛】图书推荐算法赛道(SASRec序列推荐模型 | 序列推荐模型分类)
  20. DHD的上网设置与彩信设置

热门文章

  1. WebRTC 中收集音视频编解码能力
  2. C++ 面向对象(三)异常 :异常概念、异常的匹配规则、异常安全、异常体系
  3. scrapy框架的概念和流程
  4. 设计模式:各个模式间的对比
  5. 面试官:String的最大长度是多少?
  6. 神奇的 Go init 函数
  7. 音视频PaaS的“未毕之旅”
  8. 语音编解码技术演进和应用选型
  9. 51Talk音视频技术实践和独特挑战
  10. Upsync:微博开源基于Nginx容器动态流量管理方案