ции использует операторную фун
Автор admin Понедельник, 8 июня 2009 11:32
ции использует операторную функцию string::operator<(), поэтому слова следуют в алфавитном порядке. Если вы всего лишь хотите получить отсортированную последовательность, не обязательно использовать множество. То же самое можно сделать при помощи алгоритма sort() (и множества других алгоритмов STL) с другими контейнерами STL. И все же вполне вероятно, что множество позволит решить эту задачу быстрее. Множество особенно хорошо приспособлено для поиска, поскольку его функция find() работает с логарифмической сложностью и заметно превосходит по скорости обобщенный алгоритм find(). Как вы помните, обобщенный алгоритм find() перебирает весь интервал до тех пор, пока не найдет искомый элемент, по- 370 Глава 7 • Обобщенные контейнеры этому в худшем случае он работает со сложностью Л[,ав среднем — со сложностью N/2. Впрочем, для заранее отсортированных последовательных контейнеров поиск может выполняться функцией equal_range() с логарифмической сложностью. В следующем примере список слов строится при помощи итератора istreambufjterator. Программа перемещает из входного потока в объект string те символы, для к
Комментарии закрыты.
Последние комментарии