Он не откатывается назад по тексту, а использует префикс-функцию — компактную структуру, которая точно подсказывает, с чего продолжать. Это особенно полезно при множественных запросах и больших данных.
Ключевые моменты:
• Линейная сложность: O(n + m), без возвратов в тексте
• Использует π-функцию для пропуска лишних сравнений
• Подходит для поиска в строках, логах, коде и ДНК
🔥 — если понял суть
🤝 — если уже использовал
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥36🤝14👍8
Вместо полного перебора — используем префиксные суммы и хеш-таблицу. Алгоритм работает за O(n), а значит — легко справится даже с большими входными данными.
Ключевые моменты:
• Префиксные суммы
• unordered_map для хранения уже встреченных сумм
• Формула: sum - target — она же сигнал, что подмассив найден
🔥 — если узнал новое
🤝 — если уже с этим знаком
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥37🤝11👍10
This media is not supported in your browser
VIEW IN TELEGRAM
freeCodeCamp — платформа на которой вы найдете отличные видеоуроки и другие материалы на разные темы программирования, также там есть курсы по английскому, всем советую!
📌 Ссылочка: freecodecamp.org
📣 C++ Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24🔥7🤝7
👍20🔥11❤1
Создавай параллельные потоки и управляй их завершением через join() или detach(). Это повышает производительность, но важно контролировать жизненный цикл потоков, чтобы избежать ошибок и утечек ресурсов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥53🤝15👍5
В этой статье:
• Выбор языка компилятора и целевого ассемблера
• Определение грамматики и построение лексического анализатора
• Реализация синтаксического анализатора и генерация ассемблерного кода
🟡 Рекомендую прочитать на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥4👎1
Пингуем сайт через C++!
Сейчас научимся пинговать сайты прямо из кода на C++. Это может пригодиться для быстрой проверки, работает ли нужный ресурс.
Подключим стандартные библиотеки:
Пишем простую функцию, которая отправляет 1 ping-запрос и возвращает true, если сайт отвечает:
*Если ты на Linux/macOS — используй
Теперь проверим работу на примере:
Результат при запуске:
Таким образом ты можешь проверять любую доступность — сайта, локального сервера или роутера. Особенно полезно для создания сетевых утилит, ботов или простого мониторинга.
🔥 Теперь ты умеешь делать mini-проверку «жив ли сервер» прямо на C++ — почти как сетевой спец.
📣 C++ Ready | #практика
Сейчас научимся пинговать сайты прямо из кода на C++. Это может пригодиться для быстрой проверки, работает ли нужный ресурс.
Подключим стандартные библиотеки:
#include <iostream>
#include <cstdlib> // system()
Пишем простую функцию, которая отправляет 1 ping-запрос и возвращает true, если сайт отвечает:
bool ping(const std::string& site) {
return system(("ping -n 1 " + site + " > nul").c_str()) == 0;
}
*Если ты на Linux/macOS — используй
-c 1
вместо -n 1
, и > /dev/null
вместо nul
.*Теперь проверим работу на примере:
int main() {
std::string site = "google.com";
std::cout << (ping(site) ? "Сайт доступен ✅" : "Сайт недоступен ❌");
}
Результат при запуске:
Сайт доступен ✅
Таким образом ты можешь проверять любую доступность — сайта, локального сервера или роутера. Особенно полезно для создания сетевых утилит, ботов или простого мониторинга.
🔥 Теперь ты умеешь делать mini-проверку «жив ли сервер» прямо на C++ — почти как сетевой спец.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁31👍15🔥13❤1👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Git How To — сайт, который предлагает пошаговые руководства и практические примеры для изучения системы контроля версий Git, облегчая процесс освоения её основных команд и функционала.
📌 Оставляю ссылочку: githowto.com
📣 C++ Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍8
Он берёт диапазон, применяет к каждому элементу функцию и записывает результат — куда скажешь. Можно работать с одним или двумя контейнерами, а также преобразовывать данные прямо на месте.
Основные моменты:
• Один контейнер → другой с новой логикой
• Сложение значений из двух контейнеров
• Преобразование элементов в том же контейнере
🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥36🤝18👍6