养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

如何用PYTHON解决两数之和问题

时间:2024-11-15 16:30:47

用PYTHON解决两数之和问题

工具/原料

PYTHON

方法/步骤

1、打开JUPYTERNOTEBOOK,新建一个PY文档。

如何用PYTHON解决两数之和问题

2、l=[1,5,33,6,18]goal=7这是列表和目标数,要求找到两个数相加得到目标数。

如何用PYTHON解决两数之和问题

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

如何用PYTHON解决两数之和问题

4、foriinl:ifgoal-i==?print(i,?)这里我们可以考虑用FOR循环找出两个数。

如何用PYTHON解决两数之和问题

5、foriinrange(len(l)):ifgoal-l[i]==?print(i,?)遍历的时候要指定范围,所以就要用len。

如何用PYTHON解决两数之和问题

6、foriinrange(len(l)):forjinrange(len(l)):ifgoal-l[i]==l[j]print(i,j)但是只有一个i是不够的,还要用j来记录。

如何用PYTHON解决两数之和问题

7、foriinrange(len(l)):forjinrange(1,len(l)):ifgoal-l[i]==l[j]:print(i,j)j只需要在1开始,没必要都从0开始。

如何用PYTHON解决两数之和问题

8、l=[1,5,33巳呀屋饔,5,18]goal=10foriinrange(len(l)):forjinrange(1,len(l)):ifgoal幻腾寂埒-l[i]==l[j]:print(i,j)如果列表里面有重复的数,这个方法就有点问题了。

如何用PYTHON解决两数之和问题

9、l=[1,5,33,5,18]goal=10d={}foriinrange(len(l)):if(goal-l[i])ind:print(i,d[(goal-l[i])])因为我们打算用字典来储存数据。

如何用PYTHON解决两数之和问题

10、l=[1,5,33巳呀屋饔,5,18]goal=10d={}foriinrange(len(l)):if(goal-l[i])ind:print(足毂忍珩i,d[(goal-l[i])])else:d[l[i]]=i但是这里打印的数顺序相反了。

如何用PYTHON解决两数之和问题

11、l=[1,5,33巳呀屋饔,5,18]goal=10d={}foriinrange(len(l)):if(goal-l[i])ind:print(颊俄岿髭d[(goal-l[i])],i)else:d[l[i]]=i所以这才是正确的方法。

如何用PYTHON解决两数之和问题

© 一点知识