如何用PYTHON解决两数之和问题
来源:网络收集 点击: 时间:2024-05-06打开JUPYTER NOTEBOOK,新建一个PY文档。

l =
goal = 7
这是列表和目标数,要求找到两个数相加得到目标数。

l + l
这是最简单的方法,但是数据多的时候,或者目标数比较大的时候就比较难计算了。

for i in l:
if goal - i == ?
print(i, ?)
这里我们可以考虑用FOR循环找出两个数。

for i in range(len(l)):
if goal - l == ?
print(i, ?)
遍历的时候要指定范围,所以就要用len。

for i in range(len(l)):
for j in range(len(l)):
if goal - l == l
print(i, j)
但是只有一个i是不够的,还要用j来记录。

for i in range(len(l)):
for j in range(1, len(l)):
if goal - l == l:
print(i, j)
j只需要在1开始,没必要都从0开始。

l =
goal = 10
for i in range(len(l)):
for j in range(1, len(l)):
if goal - l == l:
print(i, j)
如果列表里面有重复的数,这个方法就有点问题了。

l =
goal = 10
d = {}
for i in range(len(l)):
if (goal - l) in d:
print(i, d)])
因为我们打算用字典来储存数据。

l =
goal = 10
d = {}
for i in range(len(l)):
if (goal - l) in d:
print(i, d)])
else:
d] = i
但是这里打印的数顺序相反了。

l =
goal = 10
d = {}
for i in range(len(l)):
if (goal - l) in d:
print(d)], i)
else:
d] = i
所以这才是正确的方法。

注意字典的储存方法
PYTHON两数之和LEEDCODE练习版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_693336.html