哈希表创建方法
哈希表都是用来快速判断一个元素是否出现集合里。
§数组的大小是受限制的,而且如果元素很少,而哈希值太大会造成内存空间的浪费。
§set是一个集合,里面放的元素只能是一个key,而两数之和这道题目,不仅要判断y是否存在而且还要记录y的下标位置,因为要返回x 和 y的下标。所以set 也不能用。
§map是一种<key, value>的结构,本题可以用key保存数值,用value在保存数值所在的下标。所以使用map最为合适。
1
for num in nums:
count[num] = count.get(num, 0) + 1
2
hashmap = defaultdict(int)
for i in range(len(nums)):
hashmap[nums[i]] = i
3
collections.Counter(ransomNote)
获取nums中非重复的元素
set(nums)