波大大12138 发表于 2020-7-29 17:32:52

错误代码改正后在leetcode里面还是会报错求分析原因

题目的要求是:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。



示例:

给定 nums = , target = 9

因为 nums + nums = 2 + 7 = 9
所以返回

能说明一下它提示的错误是什么意思吗?应该怎么改?我写的代码也没40多行啊,他怎么提示40多行有问题?

zltzlt 发表于 2020-7-29 17:53:46

把你的代码发上来,帮你改改{:10_266:}力扣答题要按照格式的

BIO-张磊 发表于 2020-7-29 18:07:58

1、力扣答题需要固定格式,你的格式可能有问题,不是传参的形式
2、力扣要对代码进行优化,超过一定占用内存,就会报错

_2_ 发表于 2020-7-29 18:34:42

首先,Leetcode 的模板不能删除
每个题的题解都是写在 Solution 类下的 方法 内
如果你删掉了,Leetcode 就找不到北了{:10_256:}

如果想回复原始模板,
可以代码编辑区上面的按钮回复(注意你的代码会被覆盖)

永恒的蓝色梦想 发表于 2020-7-29 18:40:06

你的代码应该改为:class Solution:
    def twoSum(self, nums: List, target: int) -> List:
      for i in range(len(nums)):
            for j in range(len(nums)):
                if nums + nums == target:
                  return 才能通过。
不要改变力扣题目的模板。

Stubborn 发表于 2020-7-29 19:18:31

你两个for去暴力破题,真的好吗?{:10_319:}

def hash(numbers, target):
    """哈希表,不多赘述"""
    dct = {}
    for idx, val in enumerate(numbers):
      if val in dct:
            return + 1, idx + 1]
      dct = idx


def double_pointer(numbers, target):
    # TODO {
    #      如果numbers + numbers > target,由于是已经排序好的。所以 right - 1。直到指针重叠
    #      反之 numbers + numbers < target,left + 1 。
    #}
    left, right = 0, len(numbers) - 1

    while numbers + numbers != target:
      if numbers + numbers > target:
            right -= 1
      else:
            left += 1

    return


def two_points(numbers, target):
    # TODO {
    #      我们需要找两个数,numbers 以及在numbers右侧的 target - numbers
    #      我们遍历数组需要O(n),二分查找一个值需要O(log_n), 最终耗时O(nlogn)
    #}
    length = len(numbers)
    for index, value in enumerate(numbers):
      _ = index
      while _ < length:
            mid = (_ + length) >> 1
            number = numbers

            if number > target - value:
                length = mid
            elif number < target - value:
                _ = mid + 1
            else:
                return

波大大12138 发表于 2020-7-30 00:02:02

Stubborn 发表于 2020-7-29 19:18
你两个for去暴力破题,真的好吗?

两个for的话暴力解题是啥意思不懂?刚接触力扣的,是该用你的方法,你的方法更好吗?
页: [1]
查看完整版本: 错误代码改正后在leetcode里面还是会报错求分析原因