На этом шаге рассмотрим пример использования хеш-таблиц для поиска.
В вашем телефоне есть удобная встроенная телефонная книга. С каждым именем связывается номер телефона. Предположим, вы хотите построить такую телефонную книгу. Имена людей в этой книге связываются с номерами. Телефонная книга должна поддерживать следующие функции:
Такая задача идеально подходит для хеш-таблиц. Хеш-таблицы отлично работают, когда вы хотите:
Начните с создания новой хеш-таблицы:
phone_book = dict()
Добавим в телефонную книгу несколько номеров:
phone_book["Иван"] = 89128965477 phone_book["Светлана"] = 89114562356
Для добавления записи в телефонную книгу запросим имя абонента и его номер телефона:
print('Введите имя абонента: ') name = input() print('Введите номер телефона: ') number = input() phone_book[name] = number
Для поиска номера телефона по имени абонента выполните следующее:
print('Введите имя абонента: ') name = input() print(phone_book[name])
Архив с примером на языке Python можно взять здесь.
Хеш-таблицы упрощают моделирование отношений между объектами. Результат выполнения кода примера приведен на рис. 1
Рис.1. Пример работы с телефонной книгой
На следующем шаге рассмотрим примеры использования словарей.