Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
18
Добавлен:
02.06.2015
Размер:
1.53 Кб
Скачать
Результат работы программы:

printLog index 1
printLog key 9510000001
printLog index 3
printLog key 9510005593
printLog key 9510000093
printLog key 9510005503
printLog index 4
printLog key 9510005524
printLog index 5
printLog key 9510000025
printLog key 9510005545
printLog index 7
printLog key 9510005507
printLog key 9510000077
9510005593 Sidor
9510005524 Peter
9510000093 Fedor
9510000025 Nikita
9510005503 Mark
9510005545 Sergey
9510005507 Alexey
9510000077 Alexander
9510000001 Artem
3 Unknown number
9510000123 Denis

1. ключ переделать в string - чтобы можно было хранить номер телефона в виде "+79519145065" вместо int 79519145065
сейчас : phoneBook.set(9510005593, "Ivan");
будет: phoneBook.set("+79510005593", "Ivan");
Изменить при этом хэш-функцию, например на такую:
ключ=остаток от деления суммы кодов всех символов на размер реального массива
и т.д.
2*. ключ переделать не в string, а в Template (в этом случае нужно побайтно(или по словно) обрабатывать объект неизвестного типа, чтобы хэш кей посчитать)
3. добавить подсчет количества элементов типа Element
4. удаление элемента по ключу
5*. реализовать бидерево

Общее требование: чтобы интерфейс оставался прежним ( с учетом добавленных функции удаления и кол-ва элементов), а начинка была другая.

Посмотреть какие методы есть в std::map
6. Поиск по значению, этот метод должен ключ вернуть
7*. перегрузка оператора [] : чтобы можно было писать:
pBook["+79519149027"]="Николай";
cout << pBook["+79519149027"]
Соседние файлы в папке Разреженная матрица