利用哈希表实现电话号码管理系统
时间: 2023-09-22 08:06:04 浏览: 91
电话号码管理系统可以使用哈希表来存储电话号码和对应的联系人姓名。下面是一个基本的实现方法:
1. 定义一个哈希表,将电话号码作为键,联系人姓名作为值。
2. 当用户输入电话号码时,首先将该号码进行哈希。
3. 然后在哈希表中查找该哈希值对应的元素。
4. 如果该元素存在,返回对应的联系人姓名;如果不存在,提示用户该号码不存在,并询问是否添加该号码和联系人。
5. 如果用户选择添加该号码和联系人,则将该号码和联系人添加到哈希表中。
具体的代码实现如下:
```python
class PhoneNumberManager:
def __init__(self):
self.phone_book = {}
def add_phone_number(self, phone_number, name):
hash_value = hash(phone_number)
if hash_value in self.phone_book:
print("该电话号码已存在!")
else:
self.phone_book[hash_value] = name
print("电话号码添加成功!")
def search_phone_number(self, phone_number):
hash_value = hash(phone_number)
if hash_value in self.phone_book:
print("联系人姓名:", self.phone_book[hash_value])
else:
print("该电话号码不存在!")
# 测试
phone_manager = PhoneNumberManager()
phone_manager.add_phone_number("1234567890", "张三")
phone_manager.search_phone_number("1234567890")
phone_manager.search_phone_number("0987654321")
phone_manager.add_phone_number("1234567890", "李四")
```
输出结果:
```
电话号码添加成功!
联系人姓名: 张三
该电话号码不存在!
该电话号码已存在!
```
可以看到,该实现方法使用哈希表来存储电话号码和对应的联系人姓名,能够快速地查找电话号码对应的联系人。同时,使用哈希表还可以避免出现重复的电话号码。
阅读全文