1.两数之和
AC代码
思路
刚开始就是用双层for循环写,然后秉承着谦虚的态度看了题解,发现真的有O(N)的算法
一遍哈希表。主要就是利用
map建立从数到数组下标的map,然后每次计算出target-nums[i]的值,然后看map里面有对应的下标,有的话就输出,没有就继续。map的值为0时,如何区分stl的map知识有限,如何判断0是数组里面没有这个数还是查询的引索为0呢?只要储存的时候下标+1,用的时候减一就行了,这样map值为0,一定是没有这个数。
1 | class Solution { |