LeetCode - 1 python实现
Posted caturra
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode - 1 python实现相关的知识,希望对你有一定的参考价值。
题意:给你一个整型的列表nums和target,要求返回[i,j]满足nums[i]+nums[j]=target
头一回用py,求别黑..(连helloWorld都没敲过QAQ
话说leetcode怎么连数据范围都没有
ps.顺便把输入程序也搞出来了
class Solution:
def twoSum(self, nums, target):
"""
:type nums: List[int]
:type target: int
:rtype: List[int]
"""
dic0 = {}
dic1 = {}
length = len(nums)
for i in range(length):
if dic0.__contains__(nums[i])^dic1.__contains__(nums[i]) == True: # 1 0
dic1[nums[i]]=i
elif dic1.__contains__(nums[i]) == False: # 0 0
dic0[nums[i]]=i
for i in range(length):
elem = nums[i]
if target-elem == elem and dic1.__contains__(elem) == True:
return [i,dic1[elem]]
elif target-elem != elem and dic0.__contains__(target-elem) == True:
return [i,dic0[target-elem]]
########################################
fileInput = []
with open(‘stdin.txt‘) as fp:
for line in fp:
fileInput.append(line)
lis = fileInput[0].lstrip("[").rstrip("]
").split(",") # 不是标准的列表形式
nums = [int(chars) for chars in lis]
target = int(fileInput[1])
print(Solution.twoSum(Solution,nums,target))
input
[2,7,11,15]
9
output
[0,1]
以上是关于LeetCode - 1 python实现的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode解题思路及最佳代码 -- Python3实现 -- 更新中
LeetCode题目--有效的数独(python/Java实现)
Leetcode147-对链表进行插入排序(Python3实现)