美文网首页
01 Two Sum

01 Two Sum

作者: 大李子biglee | 来源:发表于2017-11-14 21:33 被阅读0次
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(object):
    def twoSum(self, nums, target):
        nums1 = nums[:]
        nums1.sort()
        i = 0
        j = len(nums1) - 1 
        index = []
        while i < j:
            if nums1[i] + nums1[j] == target:
                for x in range(len(nums)):
                    if nums[x] == nums1[i]:
                        index.append(x)
                        break
                for x in range(len(nums)-1,-1,-1):
                    if nums[x] == nums1[j]:
                        index.append(x)
                        break
                index.sort()
                break
            elif nums1[i] + nums1[j] < target:
                i += 1
            elif nums1[i] + nums1[j] > target:
                j -= 1
        return index

相关文章

网友评论

      本文标题:01 Two Sum

      本文链接:https://www.haomeiwen.com/subject/oohqvxtx.html