leetcode.array--1. Two Sum

来源:互联网 发布:淘宝机器人自动回复 编辑:程序博客网 时间:2024/05/01 15:06

array系列

问题描述:https://leetcode.com/problems/two-sum/description/

当然最容易想到的是n方的加法,再优化一点呢,可以先排序再二分最后找下标,这样是nlogn

O(n)的没想到快哭了 看到别人的解法才知道dictionary是哈希表,这样查找能降到O(1)

看来要系统地看python书了,菜鸟教程可能不太够用

代码:

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


原创粉丝点击