Pull to refresh

Comments 13

Про адаптеры функций(bind1nd, bind2nd) поговорим в 5-ой статье

Давайте не забывать bind1st и bind2nd - deprecated in C++14 and removed in C++17

в том то и прикол - на LeetCode C++ без выбора, а тут написано литкодовские компиляторы, что плюсы 20-ые.

Он работает, но единственная идея которая у меня есть, что если в библиотеке задепрекейтили функции, то они подставляют ее аналог:
template <class Operation, class T> binder2nd<Operation> bind2nd (const Operation& op, const T& x) { return binder2nd<Operation>(op, typename Operation::second_argument_type(x)); }

Вот вам для теста:
vector<int>vec = {10, 20, 30, 40, 50};
count_if(vec.begin(), vec.end(), bind2nd(less<int>(), 30));

В с++20 добавили bind_front

Когда начну готовить 5-ую статью - сделаю 2 варианта с оговоркой, что удаленные из 14-17 плюсов варианты работают на LeetCode. Получится что-то вроде старого и нового варианта. Спасибо, что нашли альтернативу.

Дополнил статью информацией о bind_front

они депрекейтнуты не по приколу, а потому что бесполезны, зачем они нужны если есть лямбды? И зачем про них вообще что-то знать, если их больше нет?

Какая-то пробежка "галопом по европам". Такое ощущение, что статья написана только для игр с LeetCode. Может не ограничиваться только сайтами с задачками? Тему можно развить ...

Палка о двух концах в первой статье - писали, что новичкам это вообще все не нужно и они будут читать сххреференс.

Единственная тема, которую я хотел добавить, но не добавил - отрицатели, но если про нее прочтут, то скорее всего забудут через пару часов.

Тут можно дополнить про лямбда-функции, добавить еще функции less_equal(), greater_equal() и еще штук 6 разных, но они покрывают таким функционалом друг друга.

Можно дополнить рассказом про шаблоны - но там задачи, а шаблоны медленнее будут и больше весить. На литкоде обычно не больше 4-ех разных типов - если бы это были шахматы с 8-ью фигурами, то возможно, стоило бы задуматься о шаблонах - но тут задача и цель хитнуть 100%

На всякие начальные отборочные приходили отличники, которых отправляли из-за оценок, но соревнование не получается - потому что они до сих пор пишут обычные массивы на плюсах и пузырьковую сортировку рядышком, и то не каждый.

Потом люди идут на информационные технологии и их садят в лужу - лабораторные работы, в которых нужно делать поиск подпоследовательности или находить оптимальные пути решения - идею они понимают, а закодировать не могут.

Лично для меня базовым C/C++ набором для leetcode является python :)

Я не хочу воровать время, поэтому ненужную информацию зачеркиваю

Спойлер

Ненужную информацию можно спрятать под спойлер.

Sign up to leave a comment.

Articles