zoukankan      html  css  js  c++  java
  • [leetcode]1两数之和

    从今天起每天做点leetcode上的题,这里的题最有意思的就是千奇百怪的测试数据往往需要思考非常全面才能A掉,挺锻炼思考力的。

    这一题看起来非常简单,但是由于极大的数据量输入,导致超时问题。

    本质上是一个考验搜索能力的题,提供的数组也是有序排列的,可以通过二分法,哈希法等进行搜索。

    我解决这道题的时候选择python语言,通过python数组对象内置的index方法查找是否存在目标,如果存在就返回下标,不存在就通过异常处理解决分支。

     1 def twoSum(self, nums, target):
     2         """
     3         :type nums: List[int]
     4         :type target: int
     5         :rtype: List[int]
     6         """
     7         for x in range(len(nums)):
     8             y=target-nums[x]
     9             if y==nums[x]:
    10                 nums.pop(x)
    11                 try:
    12                     z=nums.index(y)+1
    13                 except:
    14                     pass
    15                 else:
    16                     return x,z
    17                 finally:
    18                     nums.insert(x,y)
    19             else:
    20                 try:
    21                     z=nums.index(y)
    22                 except:
    23                     pass
    24                 else:
    25                     return x,z
    26         return
  • 相关阅读:
    成熟失去快乐
    明天出发
    不知其期
    不是自己的机子就是不好
    都收拾完了
    文盲
    郁闷
    好像感冒了
    又都疯了
    流水账,从我开始接触计算机时写起
  • 原文地址:https://www.cnblogs.com/trickofjoker/p/10536513.html
Copyright © 2011-2022 走看看