LeetCode两数之和(Python)

题目:

LeetCode两数之和(Python)

解题思路:

除开暴力解法,我的第一反应就是利用字典的(key:value)键值对来做,key储存num,value储存num对应的下标,在网页上提交的程序如下:
LeetCode两数之和(Python)
执行结果为:
LeetCode两数之和(Python)
然后看了一下讨论区和大神们的解决方案,基本都是利用Hash表去做,然而经查阅,Python建立字典时其实应该就是调用了内部的散列函数,所以我误打误撞还是利用到了Hash表。而且可以一边建立Hash表一边判断,不需要两次循环,因此改进如下:
LeetCode两数之和(Python)

执行结果为:
LeetCode两数之和(Python)