![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| varnie |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 27.9.2007 Репутация: 0 Всего: 0 |
hell-o~
имеется std::map< std::size_t, int >. нужно найти ключ, который имеет наименьшее value в этом мапе, но не равное минус единице (-1). написать написал, но хочется переписать с использованием STL/Boost. подскажите, как, пожалуйста. мой код:
Это сообщение отредактировал(а) varnie - 7.7.2008, 17:06 |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
мой код:
если что, спрашивай Добавлено через 6 минут и 22 секунды кстати, у тебя нет проверки на пустоту мапы Это сообщение отредактировал(а) Alek86 - 7.7.2008, 17:14 |
|||
|
||||
| varnie |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 27.9.2007 Репутация: 0 Всего: 0 |
спасибо, предложенный вами вариант подходит.
а проверка на пустоту мапы у меня уже есть в моем алгоритме, а этот кусок кода отрабатывает далее лишь в случае непустой мапы. |
|||
|
||||
| T0ohtik |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 9.2.2008 Репутация: нет Всего: 1 |
Лучше использую метод класса empty, для проверки на пустоту карты.
|
|||
|
||||
| varnie |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 27.9.2007 Репутация: 0 Всего: 0 |
T0ohtik, я так и делаю. использую map::empty().
выше постом я хотел сказать что сначала я через метод emtpy() у std::map проверяю данные на непустоту, и если это так, то далее у меня следует вся вереница кода, расписанная в моем первом посте. все в порядке. |
|||
|
||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 11 Всего: 36 |
... но хочется переписать с использованием STL/Boost ...
Монстрим в стиле Boost.Lambda Переделанный код by Alek86,
Это сообщение отредактировал(а) Rififi - 7.7.2008, 21:02 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Rififi
"мама, роди меня обратно" |
|||
|
||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 11 Всего: 36 |
bsa,
null_types на самом деле не нужны, поэтому малость подсократил :green: |
|||
|
||||
| Любитель |
|
||||
|
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 24 Всего: 92 |
Ну кто так пишет?! Тогда уж boost::assign... Добавлено через 3 минуты и 18 секунд Не проще просто:
А? Ну или ждать, когда появится type inference (auto-типы). Добавлено через 3 минуты и 45 секунд Пробелы, как-то не тем шрифтом пошли |
||||
|
|||||
| anatox91 |
|
|||
![]() программист-самоучка ![]() ![]() Профиль Группа: Участник Сообщений: 699 Регистрация: 12.1.2008 Где: ++Украина.Крым++ Репутация: нет Всего: 13 |
как говорится, write-only Это сообщение отредактировал(а) anatox91 - 8.7.2008, 14:39 -------------------- The code is the design © Sony VAIO VGN-FW480J ![]() |
|||
|
||||
| varnie |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 27.9.2007 Репутация: 0 Всего: 0 |
Alek86,
ваш пример в посте #2 этой темы неверный. если у нас в в мапе будет один единственный элемент у которого value будет -1, то
выведет "Min val == -1", что противоречит условию моей задачи. см пост #1. ps: да и примеры остальных ответивших тоже не учитывают это --> могут выдать неверный результат. нужно дополнительно встроить проверку. Это сообщение отредактировал(а) varnie - 12.8.2008, 18:04 |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
ну так встрой
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |