ВУЗ:
Составители:
Рубрика:
Объектно-ориентированное программирование на С++
}
// вывод нулей в качестве элементов строк,
// расположенных после той,
// в которой находится последний элемент списка
for( ;i < ob.m; i++)
{
for(j = 0; j < ob.n; j++)
out << "0\t";
out << endl;
}
return out;
}
3.3.4. Использование класса «Динамический список»
для хранения телефонной книги
Нередко возникают приложения, работающие с большим
количеством структурированной информации, объем которой постоянно
меняется. Для хранения такой информации обычно используют разные
виды динамических структур данных. Также в таких приложениях
основной функцией является поиск информации по заданным критериям.
Поэтому выбор используемой динамической структуры данных должен
быть обусловлен эффективностью выполнения поиска информации.
Простым примером подобных приложений является «Телефонная
книга». В этом приложении должно храниться произвольное количество
записей о контактах (имя абонента и его телефон). Основной функцией
приложения является поиск телефона нужного абонента.
Для хранения информации о контактах телефонной книги будем
использовать структуру данных, называемую хэш-таблицей.
В самом простом случае все данные, которые хранятся в хэш-
таблице, разбиваются на определенное количество групп, для хранения
каждой из которых используется отдельная область памяти. Определение
номера группы, в которую должны быть помещены данные, происходит
по значению некоторого ключевого поля с помощью специальной хэш-
функции. Поскольку хэш-функция однозначно определяет номер группы,
в которую попадает конкретная запись, при ее последующем поиске
значительно сокращается количество просматриваемых данных
(достаточно просмотреть только одну группу хэш-таблицы). Для
эффективного поиска желательно подбирать хэш-функцию таким
образом, чтобы обеспечить равномерное заполнение всех групп.
179
Объектно-ориентированное программирование на С++ } // вывод нулей в качестве элементов строк, // расположенных после той, // в которой находится последний элемент списка for( ;i < ob.m; i++) { for(j = 0; j < ob.n; j++) out << "0\t"; out << endl; } return out; } 3.3.4. Использование класса «Динамический список» для хранения телефонной книги Нередко возникают приложения, работающие с большим количеством структурированной информации, объем которой постоянно меняется. Для хранения такой информации обычно используют разные виды динамических структур данных. Также в таких приложениях основной функцией является поиск информации по заданным критериям. Поэтому выбор используемой динамической структуры данных должен быть обусловлен эффективностью выполнения поиска информации. Простым примером подобных приложений является «Телефонная книга». В этом приложении должно храниться произвольное количество записей о контактах (имя абонента и его телефон). Основной функцией приложения является поиск телефона нужного абонента. Для хранения информации о контактах телефонной книги будем использовать структуру данных, называемую хэш-таблицей. В самом простом случае все данные, которые хранятся в хэш- таблице, разбиваются на определенное количество групп, для хранения каждой из которых используется отдельная область памяти. Определение номера группы, в которую должны быть помещены данные, происходит по значению некоторого ключевого поля с помощью специальной хэш- функции. Поскольку хэш-функция однозначно определяет номер группы, в которую попадает конкретная запись, при ее последующем поиске значительно сокращается количество просматриваемых данных (достаточно просмотреть только одну группу хэш-таблицы). Для эффективного поиска желательно подбирать хэш-функцию таким образом, чтобы обеспечить равномерное заполнение всех групп. 179
Страницы
- « первая
- ‹ предыдущая
- …
- 177
- 178
- 179
- 180
- 181
- …
- следующая ›
- последняя »