没有合适的资源?快使用搜索试试~ 我知道了~
如何有效率的刷leetcode-LeetCode:利用python和C++来刷题
需积分: 5 2 下载量 196 浏览量
2021-07-06
21:05:32
上传
评论
收藏 136KB ZIP 举报
温馨提示
如何有效率的刷leetcode LeetCode 利用python和C++来刷题 两数之和 题目: 解析:这道题一开始看的时候,有点类似于《剑指offer》的面试题57:和为s的数字。 这那道题中,数组时排序数组,设置两个指针,分别指向头和尾。 当两者之和大于s时,把尾指针向前移;当两者之和小于s时,把头指针向后移。 但这题不是排序数组,是一个普通的序列。 这里有几种方法,leetcode都有详解。 暴力方法:把target-nums[i]与后面n-i项相比,看是否存在。此时复杂度为O(n^2) 利用哈希表,遍历两次。在第一次迭代中,我们将每个元素的值和它的索引添加到表中。 然后,在第二次迭代中,我们将检查每个元素所对应的目标元素(target - nums[i])是否存在于表中。 注意,该目标元素不能是 nums[i]本身!此时时间复杂度为O(n),空间复杂度为O(n) 利用哈希表,遍历一次。如果存在两数之和为target的话,数字是成对出现的,只是会有遍历的先后问题。所以我们可以一边 把target - nums[i]存入哈希表,一边判断num[i]是否已经存在哈希表。此时间复杂度
资源推荐
资源评论
资源评论
weixin_38534344
- 粉丝: 0
- 资源: 916
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功