JavaRush
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • Углубляемся в литераторы

    C++ SELF
    21 уровень,0 лекция
    Разбираем, как устроен «универсальный язык» STL: итераторы и диапазоны [ first , last ). Понимаем, почему end() — это граница «за последним», чем отличаются begin()/ end() и cbegin()/ cend(), как безопасно пользоваться итераторами результата на примере std::find, и закрепляем всё мини‑проектом TaskTracker с поиском задач по id через итераторы и аккуратной проверкой «не найдено».
    Открыта
  • find_if, count_if, any_of/all_of: проверки без циклов

    C++ SELF
    21 уровень,1 лекция
    Разбираем, как в C++ (STL) задавать вопросы к данным без ручных циклов: найти первый подходящий элемент через std::find_if, посчитать подходящие через std::count_if, проверить «есть ли хотя бы один?» через std::any_of и «все ли корректны?» через std::all_of. Вводим понятие предиката ( bool-проверка), обсуждаем досрочное завершение алгоритмов и типичные ошибки (проверка итератора на end(), «итератор vs индекс», побочные эффекты в предикатах).
    Открыта
  • std::accumulate: суммирование и простые агрегаты

    C++ SELF
    21 уровень,2 лекция
    Разбираем, как алгоритм std::accumulate из заголовка <numeric> делает «свёртку» диапазона: суммирование, произведение, конкатенацию строк и подсчёт по условию. Отдельно обсуждаем, почему стартовое значение init определяет тип накопления (и как избежать переполнения через 0LL), как писать свою операцию op в формате op(acc, x), и какие ошибки чаще всего делают новички.
    Открыта
  • std::sort и компаратор — базовый сценарий сортировки

    C++ SELF
    21 уровень,3 лекция
    Разбираем базовый сценарий сортировки в C++: как работает std::sort, почему он сортирует «на месте» по диапазону begin()/ end(), как задавать собственный порядок через компаратор bool comp( const T &, const T &), и почему сравнение через <=/ >= — типичная ловушка. На практике сортируем список задач ( Task) по названию, приоритету и нескольким критериям (статус done + priority), а также обсуждаем ошибки: забытый заголовок <algorithm>, побочные эффекты в компараторе и неверные ожидания про индексы после сортировки.
    Открыта
  • Алгоритм vs цикл

    C++ SELF
    21 уровень,4 лекция
    Разбираем, когда в C++ выгоднее использовать алгоритмы стандартной библиотеки (например, std::count_if, std::any_of, std::all_of, std::find_if), а когда честный for/ while делает логику прозрачнее. На примере мини-приложения TaskTracker обсуждаем читаемость vs контроль процесса, один проход vs несколько, и типичные ошибки (особенно обработку результата итератора и проверку на end()).
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush