[LeetCode By Python] 1. Two Sum

一、题目

Two Sum

二、解题

1)题意:

找出列表中任意两数的和等于给定值的两数下标。

2)关键点

进行循环时候,跳出条件是两个数的值加起来等于target,并且两个值的index不同。

三、尝试与结果

1)使用最基础的两重循环

class Solution(object):
    def twoSum(self, nums, target):
        length = len(nums)
        result = []
        for i in range(0,length):
            for j in range(i,length):
                tSum = nums[i] + nums[j]
                if tSum == target and i != j:
                    result.append(i)
                    result.append(j)
                    return result

2)使用一重循环,用target减去第一个值,判断第二个值是否在列表中(注意也要判断index是否相同)

class Solution(object):
    def twoSum(self, nums, target):
        result = []
        for i in range(0,len(nums)):
            oneNum = nums[i]
            twoNum  = target - oneNum
            if twoNum in nums:
                j = nums.index(twoNum)
                if i != j:
                    result.append(i)
                    result.append(j)
                    return result

结果:AC

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容