Pull to refresh
4
0
Send message

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

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

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

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

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

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

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

в том то и прикол - на 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));

Да, вы правы сейчас уберу этот пассаж про QList

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

В варианте про multiset я использовал auto, но в яндекс.доках была подготовлена как раз полная расписанная функция и поменяв ее в одном месте - я не уследил за второй

Первое, да - опечатка
Второй, да - делал скрины под другие контейнеры и в процессе просто один и тот же продублировал - причем в обоих неправильный
Третий, аналогичная ситуация как со вторым

Все вроде исправил, можете читать дальше или еще раз проверить

Статью я под LeetCode писал, как там обрабатывать исключение в форме: std::cout << exc.what() << '\n';. То есть я открыл рандомную задачу и проверял, как там ведут себя функции, если бы он возвращал vec.end(), то это легко обрабатывается, а std::cout - придется использовать streambuff и rdbuf - так можно делать, но неудобно и я так никогда не делал на литкоде.

Я поменяю "Начиная диалог об ассоциативных контейнерах.

Мне безумно стыдно за "безумно быстрый доступ", и я сейчас дополню статью скоростями на вставку/удаление.

Да, сейчас исправлю, спасибо что прочитали - под объектами, я имел ввиду значения.

Эх, алгебра 1 курс, вспоминаю как через метод гаусса считали этот кошмар вещественночисленный

Information

Rating
Does not participate
Registered
Activity