Leetcode刷题笔记(持续更新...)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode刷题笔记(持续更新...)相关的知识,希望对你有一定的参考价值。

1.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, and you may not use the same element twice.

Example:
Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

暴力算法时间复杂度为O(n2),不可取

方法一:

时间复杂度O(n)算法:

class Solution:
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        dic = {}
        temp = 0
        for i,j in enumerate(nums): #i存储nums的索引
            temp = target - j
            if j in dic:
                return [dic[j],i]
            dic[temp] = i #dic的值存储nums的索引,键存储该索引对应的nums值与target的差

以上是关于Leetcode刷题笔记(持续更新...)的主要内容,如果未能解决你的问题,请参考以下文章

leetcode刷题全纪录(持续更新)

力扣刷题资源

刷题和基本概念资源

leetcode刷题-贪心算法(持续更新)

LeetCode刷题合集

持续更新力扣刷题笔记