散列表电话号码查询系统
时间: 2023-11-18 11:07:32 浏览: 81
散列表电话号码查询系统可以通过使用散列函数将电话号码映射到散列表中的索引位置。这个系统可以用来存储电话号码和相关信息,允许用户通过电话号码来查找相关信息。
下面是一个简单的实现:
1. 定义一个散列函数,它可以将电话号码转换成散列值(索引位置)。
2. 创建一个散列表,用于存储电话号码和相关信息。
3. 当用户输入一个电话号码来进行查询时,从散列表中查找该电话号码对应的信息并返回。
下面是一个示例代码:
```python
class PhoneBook:
def __init__(self):
self.phone_book = {}
def hash_function(self, phone_number):
# 简单的散列函数,将电话号码的每个数字相加
return sum(int(digit) for digit in phone_number)
def add_entry(self, phone_number, info):
# 将电话号码和相关信息添加到散列表中
index = self.hash_function(phone_number)
self.phone_book[index] = (phone_number, info)
def lookup_entry(self, phone_number):
# 查找电话号码对应的信息
index = self.hash_function(phone_number)
if index in self.phone_book:
return self.phone_book[index][1]
else:
return None
```
使用示例:
```python
phone_book = PhoneBook()
# 添加电话号码和相关信息
phone_book.add_entry('123-456-7890', 'John Doe')
phone_book.add_entry('456-789-0123', 'Jane Smith')
# 查询电话号码对应的信息
print(phone_book.lookup_entry('123-456-7890')) # 输出: John Doe
print(phone_book.lookup_entry('456-789-0123')) # 输出: Jane Smith
print(phone_book.lookup_entry('111-222-3333')) # 输出: None
```
阅读全文