资讯专栏INFORMATION COLUMN

1. Two Sum

zlyBear / 1092人阅读

摘要:问题给定一个整数数组返回两个数的指数他们加起来是一个具体的目标。你可能认为每个输入一个解决方案你可能不会使用相同的元素两次。过程先将数组排序然后遍历数组,找到一个比他小的数确定另一个数的位置,如果不存在,继续寻找代码

问题

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].

过程

先将数组排序

然后遍历数组,找到一个比他小的数

确定另一个数的位置,如果不存在,继续寻找

代码
class Solution:
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        b = sorted(nums)
        for i in b:
            o = target - i
            if o not in nums:
                continue
            i_index = nums.index(i)
            for idex, item in enumerate(nums):
                if item == o and idex != i_index:
                    return sorted([i_index, idex])

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/40729.html

相关文章

  • 【LC总结】K Sum (Two Sum I II/3Sum/4Sum/3Sum Closest)

    摘要:找符合条件的总数。双指针区间考虑边界,长度,为空,等。之后的范围用双指针和表示。若三个指针的数字之和为,加入结果数组。不要求,所以不用判断了。同理,头部两个指针向后推移,后面建立左右指针夹逼,找到四指针和为目标值的元素。 Two Sum Problem Given an array of integers, find two numbers such that they add up ...

    awesome23 评论0 收藏0
  • [Leetcode] Two Sum, 3Sum,4Sum,4SumII,3Sum Closet

    摘要:解题思路题目要求两个数和等于,返回其题目说明不会有重复情况,所以我们一旦发现符合情况的,就可以直接结束循环并返回。特殊情况就是正好等于,那肯定是最接近的情况,直接返回即可。 Two SumGiven an array of integers, return indices of the two numbers such that they add up to a specific ta...

    EddieChan 评论0 收藏0
  • Two Sum系列 Leetcode解题记录

    摘要:如果没有,就到里面复杂度分析就是,因为只扫了一遍数组。复杂度分析当然就是最坏情况了,也是标准的双指针复杂度。复杂度分析这种题应该不太需要分析复杂度吧,能实现就行。复杂度分析还是最后再说两句所以可以看出,很多题目思路一致,换汤不换药。 Two Sum 友情提示:篇幅较长,找题目的话,右边有目录,幸好我会MarkDown语法。改成了系列模式,因为类似的题不少,本质上都是换壳,所以在同一篇文...

    andong777 评论0 收藏0
  • LeetCode 2:两数相加 Add Two Numbers

    摘要:给出两个非空的链表用来表示两个非负的整数。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。需要考虑到两个链表长度不同时遍历方式链表遍历完成时最后一位是否需要进一位。 ​给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 ...

    diabloneo 评论0 收藏0
  • LeetCode 2:两数相加 Add Two Numbers

    摘要:给出两个非空的链表用来表示两个非负的整数。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。需要考虑到两个链表长度不同时遍历方式链表遍历完成时最后一位是否需要进一位。 ​给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 ...

    Towers 评论0 收藏0
  • 控制Flex子元素在主轴上的比例

    摘要:控制容器内容元素和空白空间在主轴方向对齐。子元素相邻的不会发生合并。三深入了解规则如果存在正自由空间,则采用组合计算子元素在主轴上的比例。 背景 flex布局更有效的实现对齐,空间分配。最近又学习下flex子元素的尺寸计算规则,主要是flex-grow, flex-shrink的计算规则的学习。 一、基本概念 showImg(https://user-images.githubuser...

    chemzqm 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<