哈希表简单例子
一、题意
给定一个整数数组,判断数组中是否存在重复的元素。如果存在一值在数组中出现至少两次,函数返回 True ;如果数组中每个元素都不相同,则返回 False 。
输入: [1, 2, 3, 1]
输出: True
输入: [1, 2, 3, 4]
输出: False
解题思路:
我们可以使用哈希表(在 Python 里用字典实现)来解决这个问题。具体做法是遍历数组,对于每个元素,检查它是否已经存在于哈希表中:
若存在,说明该元素是重复的,直接返回 True。
若不存在,将该元素存入哈希表。
若遍历完整个数组都没发现重复元素,返回 False。
二、代码
1.代码的实现
nums=list(map(int,input().split()))
target=9
hash_table={}
for i,num in enumerate(nums):#enumerate是指元组中的索引加对象,i是索引(位置)num是对象
c=target-num
if c in hash_table:#指的是对象
print(hash_table[c],i)#c在哈希表中的索引位置以及i(当前的元素)
hash_table[num]=i