• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

雕刻自我

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

leetcode——两数之和

leetcode地址:

https://leetcode-cn.com/problemset/all/

刷题第一题:两数之和

 

 个人思路:

1、暴力尝试,双层for循环遍历数字,将满足的直接返回(时间复杂度高,n方级别)代码略

2、先排序,排完序后用前后两个指针计算是否和target相等,相等则返回;不等且大约target,后面的指针前移;否则前面的指针后移;直到获取到和target相等的值或者指针相遇

  时间复杂度取决于排序算法的时间复杂度

  注意:题目要求返回数组下标,所以排序时数组下标也要同步交换;占空间复杂度高。代码略

正解:

使用map

一次循环数组,判断target-nums[index]是否在map中,如果在,直接从map中获取对应的value值和当前index;否则将当前nums[index],index put进map中

时间复杂度为n

 

posted on 2020-10-09 23:41  雕刻自我  阅读(85)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3