力扣_day1

两数之和

hash表的时间复杂度为什么是O(1)?

hash表是基于数组+链表的实现的。数组在内存中是一块连续的空间,只要知道查找数据的下标就可快速定位到数据的内存地址,即数组查找数据的时间复杂度为O(1)。

能用一次循环解决问题就用一次循环。

class Solution(object):
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        has = {}
        for i in range(len(nums)):
            key = target - nums[i]
            if key in has:
                return i, has[key]
            has[nums[i]] = i

相关推荐

  1. _day1

    2024-01-08 09:06:03       57 阅读
  2. 二刷思路】DAY1

    2024-01-08 09:06:03       40 阅读
  3. 刷题笔记——Day1

    2024-01-08 09:06:03       39 阅读
  4. [ Hot100]Day1 两数之和

    2024-01-08 09:06:03       62 阅读
  5. hot100】刷题笔记Day1

    2024-01-08 09:06:03       54 阅读
  6. 1-100题解

    2024-01-08 09:06:03       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-08 09:06:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-08 09:06:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-08 09:06:03       82 阅读
  4. Python语言-面向对象

    2024-01-08 09:06:03       91 阅读

热门阅读

  1. 指定GPU无效

    2024-01-08 09:06:03       60 阅读
  2. python笔记-自用

    2024-01-08 09:06:03       57 阅读
  3. React07-路由管理器react-router

    2024-01-08 09:06:03       48 阅读
  4. MySQL第一讲:MySQL知识体系详解(P6精通)

    2024-01-08 09:06:03       53 阅读
  5. 企业云安全能力建设的要点

    2024-01-08 09:06:03       54 阅读
  6. es6中箭头函数 原型

    2024-01-08 09:06:03       56 阅读
  7. shtml与html的区别

    2024-01-08 09:06:03       52 阅读
  8. oracle xml_data 包的使用

    2024-01-08 09:06:03       60 阅读