|
Заблокирован
|
|
Реализация алгоритма find_firdt_not_of через другие алгоритмы31.07.2011, 18:44. Показов 6107. Ответов 55
Метки нет (Все метки)
Хотел создать эту тему в разделе С/С++ для экспертов, но мне было отказано в виду отсутствия неких прав. Поэтому формулирую тему здесь.
Есть стандартный алгоритм std::find_first_of. Но нет стандартного алгоритма std::find_first_not_of. Надо предполагать, что авторы стандарта его не включили по тем соображениям, что его легко реализовать с помощью других алгоритмов. Поэтому меня интересует, как реализовать данный алгоритм с помощью других алгоритмов? Есть какие-нибудь соображения? Или же на самом деле все сводится к тому, что надо писать собственную оригинальную реализацию этого алгоритма.
0
|
|
| 31.07.2011, 18:44 | |
|
Ответы с готовыми решениями:
55
Алгоритмы поиска. Подскажите, в чем суть алгоритма?
Циклические алгоритмы. Реализация рядов |
|
Заблокирован
|
||
| 31.07.2011, 20:33 [ТС] | ||
|
0
|
||
| 31.07.2011, 20:36 | |
|
Не по теме: Мне вот просто интересно, как так получилось, что человек работает с STL, а свою реализацию простого алгоритма написать не может?
0
|
|
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 31.07.2011, 20:36 | ||||||
|
Монстрик на основе кода easybudda. Конечно, проблема сохранилась и здесь, но функтор можно переписать через цикл и поставить v с нужной стороны (слева). Но согласен, что не всё в порядке в королевстве датском
![]()
0
|
||||||
| 31.07.2011, 20:37 | |
|
0
|
|
| 31.07.2011, 20:40 | |
|
0
|
|
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
|
| 31.07.2011, 20:41 | |
|
А интересно, find_first_of даёт какие-либо гарантии по поводу того, что версия без предиката вызовет == с правильной расстановкой аргументов?
0
|
|
|
Заблокирован
|
||
| 31.07.2011, 20:42 | ||
|
0
|
||
|
Модератор
12845 / 7594 / 1766
Регистрация: 25.07.2009
Сообщений: 13,981
|
||||||
| 31.07.2011, 20:46 | ||||||
|
Сыроежка, а не вариант в класс добавить
0
|
||||||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 31.07.2011, 20:51 | ||||||
|
easybudda, как друга?
![]() Добавлено через 1 минуту по-моему лучше вне класса объявить такую:
0
|
||||||
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
| 31.07.2011, 20:52 | |
|
1
|
|
|
|
||||||
| 31.07.2011, 20:53 | ||||||
|
Может добавить operator int(){return x;} ?
Добавлено через 53 секунды
0
|
||||||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 31.07.2011, 21:14 | ||||||
|
alex_x_x, спасибо. Сегодня ломает в стандарт лезть
![]() Добавлено через 20 минут Функтор-предикат с сохранением порядка аргументов к предыдущему моему коду.
0
|
||||||
| 31.07.2011, 21:55 | |||||||
0
|
|||||||
|
Модератор
12845 / 7594 / 1766
Регистрация: 25.07.2009
Сообщений: 13,981
|
||
| 31.07.2011, 22:06 | ||
0
|
||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 31.07.2011, 22:42 | ||||||
|
Между прочим в C++0x есть алгоритм none_of, действие которого похоже на мой предикат NotIn
Добавлено через 20 минут Ну и для полноты картины реализация через него.
0
|
||||||
|
Заблокирован
|
||
| 02.08.2011, 03:22 [ТС] | ||
![]() Спецмально для вас разъясняю: меня не интересует собственная реализация этого алгоритма. Меня интересует, можно ли этот алгоритм выразить через другие стандартные алгоритмы. Вопрос стоит так:почему этот алгоритм не включен в стандартную библиотеку С++?! Какие на это были основания?! Ведь этот алгоритм ни чем не проще и не сложнее других подобных алгоритмов. Почему для калсса std::basic_string он представлен как самостоятельный алгоритм, а для других контейнеров он отсуствует? Если предполагается, что его легко вывести из других алгоритмов, то почему для класса std::basic_string он написан отдельно, а не выведен из других алгоритмов? Вы сами-то можете сказать достоверно, почему разработчики стандарта обошли стороной этот алгоритм? Вы что-то там пытаетесь подправить мой класс Int, и до вас не доходит, а что делать, если условие поиска задано предикатом, как, например, std::less? Как в этом случае быть с перестановкой операндов для предиката?! У меня была лишь одна идея, почему этот алгоритм не включили в стандартную библиотеку С++: его легко реализовать с помощью других алгоритмов. Но оказывается, это не так! То есть никаких веских причин, почему этот алгоритм отсуствует, я не вижу. С таким же успехом можно было бы исключить и другие алгоритмы поиска, как, например, алгоритм std::find, потому что он нисколько не сложнее данного алгоритма.
0
|
||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||
| 02.08.2011, 03:43 | ||
|
Кстати, если верить Джосаттису, даже алгоритм find_first_of не входил в исходную версию STL, чего не скажешь про find.
0
|
||
|
Заблокирован
|
||||||||||||
| 02.08.2011, 03:46 [ТС] | ||||||||||||
0
|
||||||||||||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||
| 02.08.2011, 03:50 | ||
|
0
|
||
|
Модератор
12845 / 7594 / 1766
Регистрация: 25.07.2009
Сообщений: 13,981
|
||
| 02.08.2011, 04:02 | ||
|
0
|
||
| 02.08.2011, 04:02 | |
|
Реализация наложений изображений, масок на другие изображения. Реализация алгоритма Реализация алгоритма МТ
Реализация алгоритма Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге).
Задача:
Программно добавить префикс в нумерацию документов.
Решение:
В модуле объекта. . .
|
После закрытия оутлука продолжает висеть процесс в диспетчере задач
Maks 27.10.2026
С недавнего времени в продакшене возникла проблема: при закрытии оутлука в диспетчере задач продолжал висеть процесс outlook. exe. Проблема возникла после установки MS Office 2021 LTSC на машинах, под. . .
|
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него.
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952
Инструкция внутри.
https:/ / youtu. be/ VpfFZSUDGnQ. . .
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|