两数之和-twosum

"""
两数之和
需求:数组中的任意两个数之和等于目标的值,且不能重复,并返回在列表中的索引
例子:
a=[1,2,3,4,5,6,7,8,9,10]
b=10
1+9=10
在a中的索引分别是0,8

思路:

先统计列表中的元素数量

再通过循环遍历比较两个元素的和与目标值是否相等

再返回索引值

"""
#python实现
class qiuhe:
    def TwoSum(a,b):
        x=len(a)
        for i in range(x):
            for j in range(i+1,x):
                if a[i]+a[j]==b:
                    result1=a[i]
                    result2=a[j]
                    print(f"列表a中满足两数之和等于b的数分别是:{result1},{result2}")
                    print(f"索引分别是:{i},{j}")
a=[1,2,3,4,5,6,7,8,9,10]
b=10
qiuhe.TwoSum(a,b)

执行结果

D:\app\workspace\pycharm\study_python\venv\Scripts\python.exe D:/app/workspace/pycharm/study_python/TwoSum.py
列表a中满足两数之和等于b的数分别是:1,9
索引分别是:0,8
列表a中满足两数之和等于b的数分别是:2,8
索引分别是:1,7
列表a中满足两数之和等于b的数分别是:3,7
索引分别是:2,6
列表a中满足两数之和等于b的数分别是:4,6
索引分别是:3,5

Process finished with exit code 0

posted @ 2022-08-02 21:18  NiceTwocu  阅读(86)  评论(0编辑  收藏  举报